Part Number Hot Search : 
EPM706B4 LT348 STF0402 2SC4226W HMC25901 BU2520DX W01MG C4532X
Product Description
Full Text Search
 

To Download BMA250E Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  BMA250E d ata sheet page 1 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying and passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specifications within this document are su bject to change without notice. d ata sheet BMA250E digital, triaxial acceleration sensor BMA250E : d ata sheet document revision 1. 1 document release date 12 december 2013 document number bst - BMA250E - ds00 4 - 0 4 technical r eference code(s) 0 273 141 169 notes d ata in this document are su bject to change without notice. product photos and pictures are for illustration purposes only and may differ from the real products appearance. not intended for publishing bosch sensortec
BMA250E d ata sheet page 2 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. BMA250E 1 0 bit , d igital , triaxial acceleration sensor with intelligent on - chip motion - triggered interru pt controller key features ? ultra - small package lga package (12 pins), footprint 2mm x 2mm, height 0.95mm ? digital interface spi (4 - wire, 3 - wire), i2c, 2 interrupt pins v ddio voltage range: 1.2v to 3.6v ? programmable functionality acceleration ranges 2g/4g/8g/16g low - pass filter bandwidths 1khz - <8hz ? on - chip fifo integrated fifo with a depth of 32 frames ? on - chip interrupt controller motion - triggered interrupt - signal generation for - new data - any - motion (slope) detection - tap sensing (single tap / double tap) - orientation recognition - flat detection - low - g/high - g detection - no - motion / inacti vity detection ? ultra - low power low current consumption, short wake - up time, a dvanced features for system power management ? temperature sensor ? rohs compliant, halogen - free typical applications ? display profile switching ? menu scrolling, tap / doub le tap sensing ? gaming ? pedometer / step counting ? free - fall detection ? e - compass tilt compensation ? drop detection for warranty logging ? advanced system power management for mobile applications general d escription the BMA250E is a triaxial, low - g acceleration s ensor with digital output for consumer applications. it allows measurements of acceleration in three perpendicular axes. an evaluation circuitry (asic) converts the output of a micromechanical acceleration - sensing structure (mems) that works according to t he differential capacitance principle. package and interfaces of the BMA250E have been defined to match a multitude of hardware requirements. since the sensor features an ultra - small footprint and a flat package it is ingeniously suited for mobile applica tions. the BMA250E offers a variable v ddio voltage range from 1.2v to 3.6v and can be programmed to optimize functionality, performance and power consumption in customer specific applications.
BMA250E d ata sheet page 3 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. in addition it features an on - chip interrupt controller enabl ing motion - based applications without use of a microcontroller. the BMA250E senses tilt, motion , inactivity and shock vibration in cell phones, handhelds, computer peripherals, man - machine interfaces, virtual reality features and game controllers.
BMA250E d ata sheet page 4 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. index of contents 1. specification ................................ ................................ ................................ ........................ 8 2. absolute maximum ratings ................................ ................................ .......................... 11 3. block diagram ................................ ................................ ................................ ................... 12 4. functional descri ption ................................ ................................ ................................ . 13 4.1 s upply voltage and po wer management ................................ ................................ ..... 13 4.2 p ower modes ................................ ................................ ................................ ................. 14 4.3 s ensor data ................................ ................................ ................................ .................. 18 4.3.1 a cceleration data ................................ ................................ ................................ .................... 18 4.3.2 t emperature sensor ................................ ................................ ................................ ............... 19 4.4 s elf - test ................................ ................................ ................................ ....................... 20 4.5 o ffset compensation ................................ ................................ ................................ ... 21 4.5.1 s low compensation ................................ ................................ ................................ .................. 23 4.5.2 f ast compensation ................................ ................................ ................................ .................... 23 4.5.3 m anual compensation ................................ ................................ ................................ ............... 24 4.5.4 i nline calibration ................................ ................................ ................................ ...................... 24 4.6 n on - volatile memory ................................ ................................ ................................ .... 25 4.7 i nterrupt controller ................................ ................................ ................................ .. 26 4.7.1 g eneral features ................................ ................................ ................................ .................... 26 4.7.2 m apping to physical i nterrupt pins ( inttype to int p in #) ................................ ...................... 27 4.7.3 e lectrical behaviour (int pin # to open - drive or push - pull ) ................................ ................ 28 4.7.4 n ew data interrupt ................................ ................................ ................................ ................... 28 4 .7.5 s lope / any - motion detection ................................ ................................ ................................ . 29 4.7.6 t ap sensing ................................ ................................ ................................ ................................ 31 4.7.7 o rientation recogniti on ................................ ................................ ................................ .......... 34 4.7.8 f lat detection ................................ ................................ ................................ .......................... 39 4.7.9 l ow - g interrupt ................................ ................................ ................................ ....................... 40 4.7.10 h igh - g interrupt ................................ ................................ ................................ ..................... 41 4.7.11 n o - motion / slow motion detectio n ................................ ................................ ....................... 42 4.8 s oftreset ................................ ................................ ................................ ...................... 44 5. fifo operation ................................ ................................ ................................ ................... 45 5.1 fifo o perating m odes ................................ ................................ ................................ . 45 5.2 fifo d ata r eadout ................................ ................................ ................................ ....... 46 5.3 fifo f rame c ou nter and o verrun f lag ................................ ................................ ..... 46 5.4 fifo i nterrupts ................................ ................................ ................................ ............ 47
BMA250E d ata sheet page 5 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 6. register descript ion ................................ ................................ ................................ ...... 48 6.1 g eneral remarks ................................ ................................ ................................ .......... 48 6.2 r egister map ................................ ................................ ................................ ................. 49 r egister 0 x 00 (bgw_chipid) ................................ ................................ ............................ 50 r egister 0 x 02 (accd_x_lsb) ................................ ................................ ........................... 50 r egister 0 x 03 (accd_x_msb) ................................ ................................ .......................... 51 r egister 0 x 04 (accd_y_lsb) ................................ ................................ ........................... 52 r egister 0 x 05 (accd_y_msb) ................................ ................................ .......................... 53 r egister 0 x 06 (accd_z_lsb) ................................ ................................ ........................... 54 r egister 0 x 07 (accd_z _msb) ................................ ................................ .......................... 55 r egister 0 x 08 ( accd_temp ) ................................ ................................ ............................ 56 r egister 0 x 09 (int_status_0) ................................ ................................ ......................... 57 r egister 0 x 0a (int_status_1) ................................ ................................ ........................ 58 r egister 0 x 0b (int_status_2) ................................ ................................ ........................ 59 r egister 0 x 0c (int_status_3) ................................ ................................ ........................ 60 r egister 0 x 0e (fifo_status) ................................ ................................ .......................... 61 r egister 0 x 0f (pmu_range) ................................ ................................ ............................ 62 r egister 0 x 10 (pmu_bw) ................................ ................................ ................................ ... 62 r egister 0 x 11 (pmu_lpw) ................................ ................................ ................................ . 63 r egister 0 x 12 (pmu_low_noise) ................................ ................................ ................... 64 r egister 0 x 13 (accd_hbw) ................................ ................................ .............................. 65 r egister 0 x 14 (bgw_softreset) ................................ ................................ ................... 66 r egister 0 x 16 (int_en_0) ................................ ................................ ................................ .. 66 r egister 0 x 17 (int_en_1) ................................ ................................ ................................ .. 67 r egister 0 x 18 (int_en_2) ................................ ................................ ................................ .. 68 r egister 0 x 19 (int_map_0) ................................ ................................ ............................... 69 r egister 0 x 1a (int_map_1) ................................ ................................ ............................... 70 r egister 0 x 1b (int_map_2) ................................ ................................ ............................... 71 r egister 0 x 1e (int_src) ................................ ................................ ................................ ... 72 r egister 0 x 20 (int_out_ctrl) ................................ ................................ ........................ 73 r egister 0 x 21 (int_rst_latch) ................................ ................................ ...................... 74 r egi ster 0 x 22 (int_0) ................................ ................................ ................................ ......... 74 r egister 0 x 23 (int_1) ................................ ................................ ................................ ......... 75 r egister 0 x 24 (int_2) ................................ ................................ ................................ ......... 75
BMA250E d ata sheet page 6 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. r egister 0 x 25 (int_3) ................................ ................................ ................................ ......... 76 r egister 0 x 26 (int_4) ................................ ................................ ................................ ......... 76 r egister 0 x 27 (int_5) ................................ ................................ ................................ ......... 77 r egister 0 x 28 (int_6) ................................ ................................ ................................ ......... 78 r egister 0 x 29 (int_7) ................................ ................................ ................................ ......... 78 r egister 0 x 2a (int_8) ................................ ................................ ................................ ........ 79 r egister 0 x 2b (int_9) ................................ ................................ ................................ ........ 80 r egister 0 x 2c (int_a) ................................ ................................ ................................ ........ 81 r egister 0 x 2d (int_b) ................................ ................................ ................................ ........ 82 r egister 0 x 2e (int_c) ................................ ................................ ................................ ........ 82 r egister 0 x 2f (int_d) ................................ ................................ ................................ ........ 83 r egister 0 x 30 (fifo_config_0) ................................ ................................ ....................... 84 r egister 0 x 32 (pmu_self_test) ................................ ................................ ..................... 85 r egister 0 x 33 (trim_nvm_ctrl) ................................ ................................ ..................... 86 r eg ister 0 x 34 (bgw_spi3_wdt) ................................ ................................ ...................... 87 r egister 0 x 36 (ofc_ctrl) ................................ ................................ ................................ 88 r egister 0 x 37 (ofc_setting) ................................ ................................ .......................... 89 r egister 0 x 38 (ofc_offset_x) ................................ ................................ ...................... 90 r egister 0 x 39 (ofc_offset_y) ................................ ................................ ....................... 91 r egister 0 x 3a (ofc_offset_z) ................................ ................................ ...................... 92 r egister 0 x 3b (trim_gp0) ................................ ................................ ................................ 92 r egister 0 x 3c (trim_gp1) ................................ ................................ ................................ 93 r egister 0 x 3e (f ifo_config_1) ................................ ................................ ...................... 94 r egister 0 x 3f (fifo_data) ................................ ................................ ............................... 95 7. digital interface s ................................ ................................ ................................ ............ 96 7.1 s erial peripheral int erface (spi) ................................ ................................ ................ 97 7.2 i nter - i ntegrated c ircuit (i2c) ................................ ................................ .................... 101 7.2.1 spi and i2c a ccess r estrictions ................................ ................................ .......................... 104 8. pin - out and connection d iagram ................................ ................................ ............ 105 8.1 p in - out ................................ ................................ ................................ ......................... 105 8.2 c onne ction diagram 4 - wire spi ................................ ................................ ................. 106 8.3 c onnection diagram 3 - wire spi ................................ ................................ ................. 107 8.4 c onnection diagram i 2 c ................................ ................................ .............................. 108
BMA250E d ata sheet page 7 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9. package ................................ ................................ ................................ .............................. 109 9.1 o utline dimensions ................................ ................................ ................................ ..... 109 9.2 s ensing axes orientat ion ................................ ................................ ........................... 110 9.3 l anding p attern r ecommendation ................................ ................................ ............ 111 9.4 m arking ................................ ................................ ................................ ....................... 112 9.4.1 m ass production devic e s ................................ ................................ ................................ ....... 112 9.4.2 e ngineering samples ................................ ................................ ................................ .............. 112 9.5 s oldering guidelines ................................ ................................ ................................ .. 113 9.6 h andling instructions ................................ ................................ ................................ 114 9.7 t ape and reel specifi cation ................................ ................................ ....................... 115 9.7.1 o rientation within th e reel ................................ ................................ ................................ .. 116 9.8 e nvironmental safety ................................ ................................ ................................ 117 9.8.1 h alogen content ................................ ................................ ................................ .................... 117 9.8.2 i nternal package stru cture ................................ ................................ ................................ . 117 10. legal disclaimer ................................ ................................ ................................ .......... 118 10.1 e ngineering samples ................................ ................................ ................................ 118 10.2 p roduct use ................................ ................................ ................................ .............. 118 10.3 a pplication examples and hints ................................ ................................ ............... 118 11. document history and modification ................................ ................................ ... 119
BMA250E d ata sheet page 8 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 1. specification unless stated otherwise, the given values are over lifetime , operating temperature and voltage ranges . m inimum/maximum values are 3 ? . table 1 : parameter s pecification o perating c onditions parameter symbol condi tion min typ max units acceleration range g fs2g selectable via serial digital interface 2 g g fs4g 4 g g fs8g 8 g g fs16g 16 g supply voltage internal domains v dd 1.62 2.4 3.6 v supply voltage i/o domain v ddio 1.2 2.4 3.6 v voltage input low level v il spi & i2c 0. 3 v ddio - voltage input high level v ih spi & i2c 0.7 v ddio - voltage output low level v ol i ol = 3ma, spi & i2c 0.2v ddio - voltage output high level v oh i oh = 3ma , spi 0.8v ddio - total supply current in normal mode i dd t a =25c, bw = 1khz v dd = v ddio = 2.4v 130 a total supply current in suspend mode i ddsum t a =25c v dd = v ddio = 2.4v 2.1 a total supply current in deep s uspend m ode i dddsum t a =25c v dd = v ddio = 2.4v 1 a total supply current in low - p ower mode 1 i ddlp1 t a =25c, bw = 1khz v dd = v ddio = 2.4v sleep duration = 25ms 6.5 a total supply current in low - power mode 2 i ddlp2 t a =25c, bw = 1khz v dd = v ddio = 2.4v sleep duration = 25ms 66 a
BMA250E d ata sheet page 9 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying and passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specifications within this document are su bject to change without notice. total supply current in standby mode i dds bm t a =25c v dd = v ddio = 2.4v 62 a wake - up time 1 t w , up 1 from low - power mode 1 or suspend mode or deep suspend mode bw = 1khz 1.3 1 .8 ms wake - up time 2 t w , up2 from low - power mode 2 or stand - by mode bw = 1khz 1 1.2 m s start - up time t s , up por, bw = 1khz 3 ms non - volatile memory (nvm) write - cycles n nvm 15 cycles operating temperature t a - 40 +85 c o utput s igna l parameter symbol condition min typ max units sensitivity s 2g g fs2g , t a =25c 256 lsb/g s 4g g fs4g , t a =25c 128 l sb/g s 8g g fs8g , t a =25c 64 lsb/g s 16g g fs16g , t a =25c 32 lsb/g sensitivity temperature drift tcs g fs2g , nominal v dd supplies 0.02 %/k zero - g off set off g fs2g , t a =25c, n ominal v dd supplies, over life - time 80 mg zero - g offset temperature drift tco g fs2g , nominal v dd supplies 1 mg/k bandwidth b w 8 2 nd order filter, bandwidth programmable 8 hz bw 16 16 hz bw 31 31 hz bw 63 63 hz bw 125 125 hz bw 250 250 hz bw 500 500 hz bw 1000 1 , 000 hz nonlinearity nl best fit straight line, g fs2g 0.5 %fs output noise density n rms g fs2g , t a =25c nominal v dd supplies normal mode 400 g/ ? s - 40 85 c
BMA250E d ata sheet page 10 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. range temperature sensor slope dt s 0.5 k/lsb temperature sensor offset ot s 2 k m echanical c haracteristics parameter symbol condition min typ max units cross axis sensitivity s relative contribution between any two of the three axes 1 % alignment error e a relative to package outline 0.5
BMA250E d ata sheet page 11 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 2. absolute maximum ratings table 2 : absolute max imum ratings parameter condition min max units voltage at supply pin v dd pin - 0.3 4.25 v v ddio pin - 0.3 4.25 v voltage at any logic p in non - supply pin - 0.3 v ddio +0.3 v passive storage temp. range 65% rel. h. duration 200s duration 1.0ms note: stress above these limits may cause damage to the device. exceeding the specified electrical limits may affect the device reliability or cause malfunction.
BMA250E d ata sheet page 12 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 3. block diagram figure 1 shows the basic building blocks of the BMA250E : figur e 1 : block diagram of BMA250E adc temp sens voltage regulators + power control fast osc slow osc logic nvm csb sdo sdi sck ps int1 int2 vdd vddio gnd gndio c/v adc c/v adc c/v interface
BMA250E d ata sheet page 1 3 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4. functional description note: default values for registers can be found in chapter 6 . 4.1 supply voltage and p ower management the BMA250E has two distinct power supply pins: ? v dd is the main power supp ly for the internal blocks ? v ddio is a separate power supply pin used for supplying power for the interface there are no limitations on the voltage levels of both pins relative to each other, as long as each of them lies within its operating range. furt hermore, the device can be completely switched off ( v dd = 0v) while keeping the v ddio supply on ( v ddio > 0v) or vice versa. when the v ddio supply is switched off, all interface pins (csb, sdi, sck, ps) must be kept close to gnd io potential. the device c ontains a power - on reset (por) generator. it resets the logic part and the register values after powering - on v dd and v ddio . please note, that all application specific settings which are not equal to the default settings (refer to 6.2 register map), must be re - set to its designated values after por. there are no constraints on the switching sequence of both supply voltages. in case the i2c interface shall be used, a direct electrical connection between v ddio supply and the ps pin is needed in order to ensur e reliable protocol selection. for spi interface mode the ps pin must be directly connected to gnd io .
BMA250E d ata sheet page 14 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.2 power modes the BMA250E has six different power modes. besides normal mode, which represents the fully operational state of the device, there are five en ergy saving modes: deep - suspend mode, suspend mode, standby mode, low - power mode 1 and low - power mode 2 . the possible transitions between the power modes are illustrated in figure 2 : figure 2 : power mode transition diagram after power - up BMA250E is i n normal mode so that all parts of the device are held powered - up and data acquisition is performed continuously. in deep - suspend mode the device reaches the lowest possible power consumption. only the inter face section is kept alive. no data acquisition is performed and the content of the configuration registers is lost. deep suspend mode is entered (left) by writing 1 (0) to the (0x11) deep_suspend bit while (0x11 ) suspend bit is set to 0. the i 2 c wat chdog timer remains functional. the (0x11) deep_ suspend bit, the (0x34) spi3 bit, (0x34) i2c_wdt_en bit and the (0x34) i2c_wdt_sel bit are functional in deep - suspend mode. equally the interrupt level and driver configuration registers (0x20) int1_lvl , (0x 20) int1_od , (0x20) int2_lvl , and (0x20) int2_od are accessible. still it is possible to enter normal mode by performing a softreset as described in chapter 4.8 . please note, that all application specific settings which are not equal to the default setting s (refer to 6.2 register map), must be re - set to its designated values after leaving deep - suspend mode. low power mode 1 low power mode 2 normal mode suspend mode deep - suspend mode standby mode low power mode 1 low power mode 2 normal mode suspend mode deep - suspend mode standby mode
BMA250E d ata sheet page 15 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. i n suspend mode the whole analog part is powered down. no data acquisition is performed . while in suspend mode t he latest acceleration data and the con tent of all configuration registers are kept . writing to and reading from registers is supported except from the (0x3e) fifo_config_1, (0x30) fifo_config_0 and (0x3f) fifo_data register. i t is possible to enter normal mode by performing a softreset as desc ribed in chapter 4.8 . suspend mode is entered (left) by writing 1 (0) to the (0x11) suspend bit after bit (0x12) lowpower_mode has been set to 0. although write access to registers is supported at the full interface clock speed (scl or sck) , a wait ing period must be inserted between two consecutive write cycles (please refer also to section 7.2.1) . in standby mode the analog part is powered down, while the digital part remains largely operational. no data acquisition is performed. reading and writi ng registers is supported without any restrictions. the latest acceleration data and the content of all configuration registers are kept. standby mode is entered (left) by writing 1 (0) to the (0x11) suspend bit after bit (0x12) lowpower_mode has been set to 1. it is also possible to enter normal mode by performing a softreset as described in chapter 4.8 . in low - power mode 1 , the device is periodically switching between a sleep phase and a wake - up phase. the wake - up phase essentially corresponds to o peration in normal mode with complete power - up of the circuitry. the sleep phase essentially corresponds to operation in suspend mode . low - power mode is entered (left) by writing 1 (0) to the (0x11) lowpower_en bit with bit (0x12) lowpower_mode set to 0 . read access to registers is possible except from the (0x3f) fifo_data register . however, unless the register access is synchronised with the wake - up phase, the restrictions of the suspend mode apply. low - power mode 2 is very similar to low - power mode 1, but register access is possible at any time without restrictions. it consumes more power than low - power mode 1 . in low - power mode 2 the device is periodically switching between a sleep phase and a wake - up phase. the wake - up phase essentially correspond s to operation in normal mode with complete power - up of the circuitry. the sleep phase essentially corresponds to operation in standby mode . low - power mode is entered (left) by writing 1 (0) to the (0x11) lowpower_en bit with bit (0x12) lowpower_mode s et to 1 . the timing behaviour of the low - power modes 1 and 2 depends on the setting of the (0x12 ) sleeptimer _en bit. when (0x12 ) sleeptimer _en is set to 0, the event - driven time - base mode (edt) is selected. in edt the duration of the wake - up phase de pends on the number of samples required by the enabled interrupt engines . if an interrupt is detected, the device stays in the wake - up phase as long as the interrupt condition endures (non - latched interrupt), or until the latch time expires (temporary inte rrupt), or until the interrupt is reset (latched interrupt). if no interrupt is detected, the device enters the sleep phase immediately after the required number of acceleration samples have been taken and an active interface access cycle has ended . the ed t mode is recommended for power - critical applications which do not use the fifo. also, edt mode is compatible with legacy bst sensors. figure 3 shows the timing diagram for low - power modes 1 and 2 when edt is selected.
BMA250E d ata sheet page 16 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. figure 3 : timing diagram for low - power mode 1/2, edt when (0x12 ) sleeptimer _en is set to 1, the equidistant - sampling mode (est) is selected. the use of the est mode is recommended when the fifo is used since it ensures that equidistant samples are sampled into the fifo regardless of whether the active phase is extended by active interrupt engines or interface activity. in est mode the sleep time t sleep is defined as shown in figure 4 . the fifo sampling time t s ample is the sum of the sleep time t sleep and th e sensor data sampling time t s smp . since interrupt engines can extend the active phase to exceed the sleep time t sleep , equidistant sampling is only guaranteed if the bandwidth has been chosen such that 1 / (2 * bw) = n * t sleep where n is an integer. if thi s condition is infringed, equidistant sampling is not possible. once the sleep time has elapsed the device will store the next available sample in the fifo . this set - up condition is not recommended as it may result in timing jitter. figure 4 : timing diagram for low - power mode 1/2, est state sleep phase active phase sample sample sample sample sample sample t sleep t settle settle settle sample t sleep t active state sleep phase active phase sample sample sample sample sample sample t settle settle settle sample settle sample t sleep t sleep t sleep t sample t sample t sample sampled into fifo t ssmp
BMA250E d ata sheet page 17 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying and passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specifications within this document are su bject to change without notice. the sleep time for lower - power mode 1 and 2 is set by the (0x11) sleep_dur bits as shown in the following table: table 3 : sleep phase duration settings (0x11) sleep_dur sleep phase duration t sleep 0000b 0.5ms 0001b 0.5ms 0010b 0.5ms 0011b 0.5ms 0100b 0.5ms 0101b 0.5ms 0110b 1ms 0111b 2ms 1000b 4ms 1001b 6ms 1010b 10ms 1011b 25ms 1100b 50ms 1101b 100ms 1110b 500ms 1111b 1s the current consumption of the bma2 50e in low - power mode 1 ( i ddlp1 ) and low - power mode 2 ( i ddlp2 ) can be estimated with the following formulae: . when estimating the length of the wake - up phase t active , the corresponding typical wake - up t ime, t w,up1 or t w, up2 and t ut ( given in table 4 ) have to be considered: if bandwidth is >=31.25 hz: t active = t ut + t w,up1 - 0. 9 ms (or t active = t ut + t w,up2 - 0. 9 ms) else: t active = 4 t ut + t w,up1 - 0. 9 ms (or t active = 4 t ut + t w,up2 - 0. 9 ms) during the wake - up phase all analog modules are held powered - up, while d uring the sleep phase most analog modules are powered down. consequently, a wake - up time of more than t w,up1 ( t w,up2 ) is needed to settle the analog modules so that reliable ac celeration data are generated. active sleep dd active ddsum sleep ddlp t t i t i t i ? ? ? ? ? 1 active sleep dd active ddsbm sleep ddlp t t i t i t i ? ? ? ? ? 2
BMA250E d ata sheet page 18 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.3 sensor data 4.3.1 acceleration data the width of acceleration data is 1 0 bits given in twos complement representation. the 1 0 bits for each axis are split into an msb upper part (one byte containing bits 9 to 2 ) and an lsb lower p art (one byte containing bits 2 to 0 of acceleration and a (0x02, 0x04, 0x06) new_data flag). reading the acceleration data registers shall always start with the lsb part. in order to ensure the integrity of the acceleration data, the content of an msb reg ister is locked by reading the corresponding lsb register (shadowing procedure). when shadowing is enabled, the msb must always be read in order to remove the data lock. the shadowing procedure can be disabled (enabled) by writing 1 (0) to the bit shad ow_dis . with shadowing disabled, the content of both msb and lsb registers is updated by a new value immediately. unused bits of the lsb registers may have any value and should be ignored . the (0x02, 0x04, 0x06) new_data flag of each lsb register is set if the data registers have been updated . the flag is reset if either the corresponding msb or lsb part is read. two different streams of acceleration data are available, unfiltered and filtered. the unfiltered data is sampled with 2khz. the sampling rate of the filtered data depends on the selected filter bandwidth and is always twice the selected bandwidth (bw = odr/2) . which kind of data is stored in the acceleration data registers depends on bit (0x13) data_high_bw . if (0x13) data_high_bw is 0 (1), th en filtered (unfiltered) data is stored in the registers. both data streams are offset - compensated. the bandwidth of filtered acceleration data is determined by setting the (0x10) bw bit as followed: table 4 : bandwidth configurat ion bw bandwidth update time t ut 00xxx *) - 01000 7.81hz 64ms 01001 15.63hz 32ms 01010 31.25hz 16ms 01011 62.5hz 8ms 01100 125hz 4ms 01101 250hz 2ms 01110 500hz 1ms 01111 1000hz 0.5ms 1xxxx *) - *) note: settings 00xxx result in a bandwidth of 7.81 hz; settings 1xxxx result in a bandwidth of 1000 hz. it is recommended to actively set an application specific and an appropriate bandwidth and to use the range from 01000b to 01111b only in order to be compatible with future products.
BMA250E d ata sheet page 19 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. the bma 250e supports four different acceleration measurement ranges. a measurement range is selected by setting the (0x0f) range bits as follows: table 5 : range selection range acceleration measurement range resolution 0011 2g 3. 9 1 mg/ls b 0101 4g 7.81 mg/lsb 1000 8g 15.63 mg/lsb 1100 16g 31.25 mg/lsb others reserved - 4.3.2 temperature sensor the width of temperature data is 8 bits given in twos complement representation. temperature values are available in the (0x08) temp register. t he slope of the temperature sensor is 0.5k/lsb, its ce nter temperature is 23 c [ (0x08) temp = 0x00].
BMA250E d ata sheet page 20 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.4 self - test this feature permits to check the sensor functionality by applying electrostatic forces to the sensor core instead of external accelerations. b y actually deflecting the seismic mass, the entire signal path of the sensor can be tested. activating the self - test results in a static offset of the acceleration data; any external acceleration or gravitational force applied to the sensor during active s elf - test will be observed in the output as a superposition of both acceleration and self - test signal. before the self - test is enabled the g - range should be set to 8 g. the self - test is activated individually for each axis by writing the proper value to the (0x32) self_test_axis bits (01b for x - axis, 10b for y - axis, 11b for z - axis, 00b to deactivate self - test). it is possible to control the direction of the deflection through bit (0x32) self_test_sign . the excitation occurs in negative (positive) dir ection if (0x32) self_test_sign = 0b (1b). the amplitude of the deflection has to be set high by writing (0x32) self_test_amp =1b. after the self - test is enabled, the user should wait 50ms before interpreting the acceleration data. in order to ensure a proper interpretation of the self - test signal it is recommended to perform the self - test for both (positive and negative) directions and then to calculate the difference of the resulting acceleration values. table 6 shows the minimum differences for each axis. the actually measured signal differences can be significantly larger. table 6 : self - test difference values x - axis signal y - axis signal z - axis signal resulting minimum diffe rence signal 800 mg 800 mg 400 mg it is recommended to perform a reset of the device after a self - test has been performed . if the reset cannot be performed, the following sequence must be kept to prevent unwanted interrupt generation: disable interru pts, change parameters of interrupts, wait for at least 5 0 ms, enable desired interrupts.
BMA250E d ata sheet page 21 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.5 offset compensation offsets in measured signals can have several causes but they are always unwanted and disturbing in many cases. therefore, the BMA250E offers an a dvanced set of four digital offset compensation methods which are closely matched to each other. these are slow, fast, and manual compensation as well as inline calibration. the compensation is performed with un filtered data, and is then applied to both, unfiltered and filtered data. if necessary t he result of this computation is saturated to prevent any overflow errors (the smallest or biggest possible value is set, depending on the sign). however, the registers used to read and write compensation values have only a width of 8 bits. an overview of the offset compensation principle is given in figure 5 : figure 5 : principle of offset compensation
BMA250E d ata sheet page 22 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. the public offset compensation registers (0x38) offset_x , (0x39) offset_y , (0x3a) offset_z are image s of the corresponding registers in the nvm . with each image update (see section 4. 6 non - volatile memory for details) the contents of the nvm registers are written to the public registers. t he public register s can be over - written by the user at any time . after changing the contents of the public registers by either an image update or manually, all 8bit values are extend ed to 1 0 bit values for internal computation. in the opposite direction, if an internally computed value changes it is con verted to an 8bit value and stored in the public register. depending on the selected g - range the conversion from 1 0 bit to 8bit values can result in a loss of accuracy of one to several lsb. this is shown in figure 5. in case an internally computed compe nsation value is too small or too large to fit into the corresponding register, it is saturated in order to prevent an overflow error. by writing 1 to the (0x36) offset_reset bit, all offset compensation registers are reset to zero.
BMA250E d ata sheet page 23 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.5.1 slow compensation slow compensation is based on a 1 st order high - pass filter, which continuously drives the average value of the output data stream of each axis to zero. the bandwidth of the high - pass filter is configured with bit (0x37) cut_off according to table 7 . table 7 : compensation period settings (0x37) cut_off high - pass filter bandwidth 0b 1 1b 10 hz the slow compensation can be enabled (disabled) for each axis independently by setting the bits (0x36) hp_x_en, hp_y_en, hp_z_en to 1 (0), respectively. slow compensation should not be used in combination with low - power mode. in low - power mode the conditions (availability of necessary data) for proper function of slow compensation are not fulfilled. 4.5.2 fast compensation fast compensation is a one - shot process by which the compensation value is set in such a way that when added to the raw acceleration, the resulting acceleration value of each axis approaches the target value. this is best suited for end - of - line trimming with the customers device positioned in a well - defined orientation. for fast compensation the g - range has to be switched to 2g. the algorithm in detail: an average of 16 consecutive acceleration values is computed and t he difference between target value and computed value is written to (0x38, 0x39, 0x3a) offset_filt_x/y/z . the public registers (0x38, 0x39, 0x3a) offset_filt_x/y/z are updated with the contents of the internal registers (using saturation if necessary) and can be read by the user. fast compensation is triggered for each axis individually by setting the (0x36) cal_trigger bits as shown in table 8 : table 8 : fast compensation axis select ion (0x36) cal_trigger selected axis 00b none 01b x 10b y 11b z r egister (0x36) cal_trigger is a write - only register. once triggered, the status of the fast correction process is reflected in the status bit (0x36) cal_rdy . bit (0x36) cal_rdy is 0 while the correction is in progress. otherwise it is 1 . bit (0x36) cal_rdy is 0 when (0x36) cal_trigger is not 00.
BMA250E d ata sheet page 24 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. for the fast offset compensation, the compensation target can be chosen by setting the bits (0x37) offset_target_x , (0x37) offset_targe t_y , and (0x37) offset_target_z according to table 9 : table 9 : offset target settings (0x37) offset_target_x/y/z target value 00b 0g 01b +1g 10b - 1g 11b 0g fast compensation s hould not be used in combination with any of the low - power mode s . in low - power mode the conditions (availability of necessary data) for proper function of fast compensation are not fulfilled. 4.5.3 manual compensation t he contents of the public compensation reg isters (0x38, 0x39, 0x3a) offset_filt_x/y/z can be set manually via the digital interface. it is recommended to write into these registers direct ly after a new data interrupt has occurred in order not to disturb running offset computations. writing to the offset compensation registers is not allowed while the fast compensation procedure is running. 4.5.4 inline calibration for certain application s , it is often desirable to calibrate the offset once and to store the compensation values permanently. this can be a chieved by using one of the aforementioned offset compensation methods to determine the proper compensation values and then storing these values permanently in the nvm . see section 4. 6 non - volatile memory for details of the storing procedure. each time th e device is reset, the compensation values are loaded from the non - volatile memory into the image registers and used for offset compensation until they are possibly overwritten using one of the other compensation methods.
BMA250E d ata sheet page 25 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.6 non - volatile memory the entire m emory of the BMA250E consists of three different kinds of registers: hard - wired, volatile, and non - volatile. part of it can be both read and written by the user. access to non - volatile memory is only possible through (volatile) image registers. altogether , there are eight registers (octets) with nvm backup which are accessible by the user . the addresses of the image registers range from 0x38 to 0x3 c . while the addresses up to 0x3 a are used for offset compensation (see 4 .4 offset compensation), addresses 0x 3 b and 0x3 c are general purpose registers not linked to any sensor - specific functionality. the content of the nvm is loaded to the image registers after a reset (either por or softreset) or after a user request which is performed by writing 1 to the wri te - only bit (0x33) nvm_load . as long as the image update is in progress , bit (0x33) nvm_ rdy is 0 , otherwise it is 1 . the image registers can be read and written like any other register. writing to the nvm is a three - step procedure: 1. write the new cont ents to the image registers. 2. write 1 to bit (0x33) nvm_prog_mode in order to unlock the nvm . 3. write 1 to bit (0x33) nvm_prog_trig and keep 1 in bit (0x33) nvm_prog_mode in order to trigger the write process. writing to the nvm always renews the entir e nvm contents. it is possible to check the write status by reading bit (0x33) nvm_rdy . while (0x33) nvm_rdy = 0, the write process is still in progress ; if (0x33) nvm_rdy = 1, then writing is completed. as long as the write process is ongoing, no chan ge of power mode and image registers is allowed. also, the nvm write cycle must not be initiated while image registers are updated , in low - power mode, and in suspend mode. please note that the number of permitted nvm write - cycles is limited as specified i n table 1 . the number of remaining write - cycles can be obtained by reading bits (0x33) nvm_remain .
BMA250E d ata sheet page 26 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7 interrupt controller the BMA250E is equipped with eight programmable interrupt engines. each interrupt can be independently enable d and configured. if the trigger condition of an enabled interrupt is fulfilled, the corresponding status bit is set to 1 and the selected interrupt pin is activated. the BMA250E provides two interrupt pins, int1 and int2; interrupts can be freely mapped to any of these pins. the state of a specific interrupt pin is derived from a logic or combination of all interrupts mapped to it . the interrupt status registers are updated when a new data word is written into the acceleration data registers. if an in terrupt is disabled, all active status bits associated with it are immediately reset. 4.7.1 general features an interrupt is cleared depending on the selected interrupt mode, which is common to all interrupts. there are three different interrupt modes: non - latc hed, latched, and temporary. the mode is selected by the (0x21) latch_int bits according to table 10 . table 10 : interrupt mode selection (0x21) latch_int interrupt mode 0000b non - latched 0001b temporary, 250ms 0010b temporary, 500ms 0011b temporary, 1s 0100b temporary, 2s 0101b temporary, 4s 0110b temporary, 8s 0111b latched 1000b non - latched 1001b temporary, 2 50s 1010b temporary, 500s 1011b temporary, 1ms 1100b temporary, 12.5ms 1101b tempo rary, 25ms 1110b temporary, 50ms 1111b latched an interrupt is generated if its activation condition is met. it can not be cleared as long as the activation condition is fulfilled. in the non - latched mode the interrupt status bit and the selected pin (the contribution to the or condition for int1 and/or int2) are cleared as soon as the activation condition is no more valid. exceptions to this behavior are the new data, orientation, and flat interrupts, which are automatically reset after a fixed time .
BMA250E d ata sheet page 27 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. in latched mode an asserted interrupt status and the selected pin are cleared by writing 1 to bit (0x21) reset_int . if the activation condition still holds when it is cleared, the interrupt status is asserted again with the next change of the accelera tion registers. in the temporary mode an asserted interrupt and selected pin are cleared after a defined period of time. the behaviour of the different interrupt modes is shown graphically in figure 6 . the timings in this mode are subject to the same tole rances as the bandwidths (see table 1 ). figure 6 : interrupt modes several interrupt engines can use either unfiltered or filtered acceleration data as their input. for thes e interrupts, the source can be selected with the bits in register (0x1e) . t hese are (0x1e) int_src_data , (0x1e) int_src_tap , (0x1e) int_src_s lo_no_mot , (0x1e) int_src_slope , (0x1e) int_src_high , and (0x1e) int_src_low . setting the respective bits to 0 ( 1) selects filtered (unfiltered) data as input. t he orientation recognition and flat detection interrupt always use filtered input data. it is strongly recommended to set interrupt parameters prior to enabling the interrupt. changing parameters of an al ready enabled interrupt may cause unwanted interrupt generation and generation of a false interrupt history. a safe way to change parameters of an enabled interrupt is to keep the following sequence: disable the desired interrupt, change parameters, wait f or at least 10ms , and then re - enable the desired interrupt. 4.7.2 mapping to physical interrupt pins (inttype to int pin#) r egisters (0x19) to (0x1b) are dedicated to mapping of interrupts to the interrupt pins int1 or int2 . setting (0x19) int1 _inttyp e to 1 (0) maps (unmaps) inttyp e to pin int1 . c orrespondingly setting (0x1b) int2 _inttyp e to 1 (0) maps (unmaps) inttyp e to pin int2 . note: inttyp e to be replaced with the precise notation, given in the memory map in chapter 6 . example: f or flat interrupt (int1_flat): setting (0x19) int1_flat to 1 maps int1_flat to pin int1 . i n t e r n a l s i g n a l f r o m i n t e r r u p t e n g i n e i n t e r r u p t o u t p u t n o n - l a t c h e d t e m p o r a r y l a t c h e d l a t c h p e r i o d
BMA250E d ata sheet page 28 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.3 electrical behaviour (int pin# to open - drive or push - pull) both interrupt pins can be configured to show the desired electrical behaviour. the active level of e ach interrupt pin is determined by the (0x20) int1_lvl and (0x20) int2_lvl bits. if (0x20) int1_lvl = 1 (0) / (0x20) int2_lvl = 1 (0), then pin int1 / pin int2 is active 1 (0). the characteristic of the output driver of the interrupt pins may be configured with bits (0x20) int1_od and (0x20) int2_od . by setting bits (0x20) int1_od / (0x20) int2_od to 1 , the output driver shows open - drive characteristic , by setting the configuration bits to 0 , the output driver shows push - pull characteri stic . when open - drive characteristic is selected in the design, external pull - up or pull - down resistor should be applied according the int_lvl configuration. 4.7.4 new data interrupt this interrupt serves for synchronous reading of acceleration data. it is gene rated after storing a new value of z - axis acceleration data in the data register. the interrupt is cleared automatically when the next data acquisition cycle starts. the interrupt status is 0 for at least 50s. the interrupt mode of the new data interru pt is fixed to non - latched. it is enabled (disabled) by writing 1 (0) to bit (0x17) data_en . the interrupt status is stored in bit (0x0a) data_int . due to the settling time of the filter, the first interrupt after wake - up from suspend or standby mode will take longer than the update time.
BMA250E d ata sheet page 29 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. slope_th int slope acceleration acc(t 0 ) acc(t 0 ?1/(2*bw)) slope(t 0 )=acc(t 0 )?acc(t 0 ?1/(2*bw)) time time time slope_dur slope_du r 4.7.5 slope / a ny - motion detection slope / a ny - motion detection uses the slope between successive acceleration signals to detect changes in motion. an interrupt is generated when the slope (absolute value of acceleration difference) exceeds a preset threshold. it is cleared as soon as the slope falls below the threshold. the principle is made clear in figure 7 . figure 7 : principle of any - motion detection the threshold i s defined through register (0x28) slope_th . in terms of scaling 1 lsb of (0x28) slope_th corresponds to 3.91 mg in 2g - range (7.81 mg in 4g - range, 15.6 mg in 8g - range and 31.3 mg in 16g - range). therefore the maximum value is 996 mg in 2g - range (1.99g in 4g - range, 3.98g in 8g - range and 7.97g in 16g - range). the time difference between the successive acceleration signals depends on the selected bandwidth and equates to 1/(2*bandwidth) ( ? t=1/(2*bw)). in order to suppress false triggers , the interrupt is only g enerated (cleared) if a certain number n of consecutive slope data points is larger (smaller) than the slope threshold given by (0x28) slope_th . this number is set by the (0x27) slope_dur bits. it is n = (0x27) slope_dur + 1 for (0x27). example: (0x27) sl ope_dur = 00b, , 11b = 1decimal, , 4decimal .
BMA250E d ata sheet page 30 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.5.1 enabling (disabling) for each axis any - motion detection can be enabled (disabled) for each axis separately by writing 1 (0) to bits (0x16) slope_en_x , (0x16) slope_en_y , (0x16) slope_en_z . the criteria fo r any - motion detection are fulfilled and the slope interrupt is generated if the slope of any of the enabled axes exceeds the threshold (0x28) slope_th for [ (0x27) slope_dur +1] consecutive times. as soon as the slopes of all enabled axes fall or stay belo w this threshold for [ (0x27) slope_dur +1] consecutive times the interrupt is cleared unless interrupt signal is latched. 4.7.5.2 axis and sign information of slope / any motion interrupt the interrupt status is stored in bit (0x09) slope_int . the any - motion inte rrupt supplies additional information about the detected slope. the axis which triggered the interrupt is given by that one of bits (0x0b) slope_first_x , (0x0b) slope_first_y , (0x0b) slope_first_z that contains a value of 1. the sign of the triggering sl ope is held in bit (0x0b) slope_sign until the interrupt is retrigger e d . if (0x0b) slope_sign = 0 (1), the sign is positive (negative).
BMA250E d ata sheet page 31 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.6 tap sensing tap sensing has a functional similarity with a common laptop touch - pad or clicking keys of a computer mouse. a tap event is detected if a pre - defined slope of the acceleration of at least one axis is exceeded. two different tap events are distinguished: a single tap is a single event within a certain time, followed by a certain quiet time. a double tap consists of a first such event followed by a second event within a defined time frame. single tap interrupt is enabled (disabled) by writing 1 (0) to bit (0x16) s_tap_en . double tap interrupt is enabled (disabled) by writing 1 (0) to bit (0x16) d _tap_en . the status of the single tap interrupt is stored in bit (0x09) s_tap_int , the status of the double tap interrupt is stored in bit (0x09) d_tap_int . the slope threshold for detecting a tap event is set by bits (0x2b) tap_th . the meaning of (0x2b ) tap_th depends on the range setting. 1 lsb of (0x2b) tap_th corresponds to a slope of 62.5mg in 2g - range, 125mg in 4g - range, 250mg in 8g - range, and 500mg in 16g - range. in figure 8 the meaning of the different timing parameters is visualized: figure 8 : timing of tap detection t a p _ s h o c k t a p _ q u i e t t a p _ d u r t a p _ s h o c k t a p _ q u i e t t i m e 1 2 . 5 m s s i n g l e t a p d e t e c t i o n d o u b l e t a p d e t e c t i o n s l o p e t i m e 1 2 . 5 m s t i m e 1 s t t a p 2 n d t a p t a p _ t h
BMA250E d ata sheet page 32 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. the parameters (0x2a) tap_shock and (0x2a) tap_quiet apply to both single tap and double tap detection, while (0x2a) tap_dur applies to double tap detection only. within the dur ation of (0x2a) tap_shock any slope exceeding (0x2b) tap_th after the first event is ignored. contrary to this, within the duration of (0x2a) tap_quiet no slope exceeding (0x2b) tap_th must occur, otherwise the first event will be cancelled. 4.7.6.1 single tap de tection a single tap is detected and the single tap interrupt is generated after the combined durations of (0x2a) tap_shock and (0x2a) tap_quiet , if the corresponding slope conditions are fulfilled. the interrupt is cleared after a delay of 12.5 ms. do no t map single - tap to any int pin if you do not want to use it. 4.7.6.2 double tap detection a double tap interrupt is generated if an event fulfilling the conditions for a single tap occurs within the set duration in (0x2a) tap_dur after the completion of the firs t tap event. the interrupt is automatically cleared after a delay of 12.5 ms. 4.7.6.3 selecting the timing of tap detection for each of parameters (0x2a) tap_shock and (0x2a) tap_quiet two values are selectable. by writing 0 (1) to bit (0x2a) tap_shock the du ration of (0x2a) tap_shock is set to 50 ms (75 ms). by writing 0 (1) to bit (0x2a) tap_quiet the duration of (0x2a) tap_quiet is set to 30 ms (20 ms). the length of (0x2a) tap_dur can be selected by setting the (0x2a) tap_dur bits according to table 11 table 11 : selection of tap_dur (0x2a) tap_dur length of tap_dur 000b 50 ms 001b 100 ms 010b 150 ms 011b 200 ms 100b 250 ms 101b 375 ms 110b 500 ms 111b 700 ms
BMA250E d ata sheet page 33 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.6.4 axis and sign information of tap sensing the sign of the slope of the first tap which triggered the interrupt is stored in bit (0x0b) tap_sign (0 means positive sign, 1 means negative sign). the value of this bit persists after clearing the interrupt. the axi s which triggered the interrupt is indicated by bits (0x0b) tap_first_x , (0x0b) tap_first_y , and (0x0b) tap_first_z . the bit corresponding to the triggering axis contains a 1 while the other bits hold a 0. these bits are cleared together with clearing the interrupt status. 4.7.6.5 tap sensing in low power mode in low - power mode, a limited number of samples is processed after wake - up to decide whether an interrupt condition is fulfilled. the number of samples is selected by bits (0x2b) tap_samp according to table 12 . table 12 : meaning of (0x2b) tap_samp (0x2b) tap_samp number of samples 00b 2 01b 4 10b 8 11b 16
BMA250E d ata sheet page 34 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.7 orientation recognition the orientation recognition feature informs on an orientation change of the sensor with respect to the gravitational field vector g. the measured acceleration vector components with respect to the gravitational field are defined as shown in figure 9 . figure 9 : definitio n of vector components therefore, the magnitudes of the acceleration vectors are calculated as follows: acc_x = 1g x sin ? x cos ? acc_y = ?1g x sin ? x sin ? acc_z = 1g x cos ? acc_y/acc_x = ?tan ? depending on the magnitudes of the acceleration vectors the orientation of the device in the space is determined and stored in the three (0x0c) orient bits. these bits may not be reset in the sleep phase of low - power mode. there are three orientation calculation modes with different thresholds for switching between different orientations: symmetrical, high - asymmetrical, and low - asymmetrical. the mode is selected by setting the (0x2c) orient_mode bits as given in table 13 . table 13 : orientation mode settings (0x2c) orient_mode orientation mode 00b symmetrical 01b high - asymmetrical 10b low - asymmetrical 11b symmetrical
BMA250E d ata sheet page 35 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. for each orientation mode the (0x0c) orient bits have a different meaning as shown in table 14 to table 16 : table 14 : meaning of the (0x0c) orient bits in symmetrical mode (0x0c) orient name angle condition x00 portrait upright 315 < ? < 45 |acc_y| < |acc_x| - hyst and acc_x - hyst 0 x01 portrait upside down 135 < ? < 225 |acc_y| < |acc_x| - hyst and acc_x + hyst < 0 x10 landscape left 45 < ? < 135 |acc_y| |acc_x| + hyst and acc_y < 0 x11 landscape right 225 < ? < 315 |acc_y| |acc_x| + hyst and acc_y 0 table 15 : meaning of the (0x0c) orient bits in high - asymmetrical mode (0x0c) orient name angle condition x00 portrait upright 297 < ? < 63 |acc_y| < 2 ? |acc_x| - hyst and acc_x - hyst 0 x01 portrait upside down 117 < ? < 243 |acc_y| < 2 ? |acc_x| - hyst and acc_x + hyst < 0 x10 landscape left 63 < ? < 117 |acc_y| 2 ? |acc_x| + hyst and acc_y < 0 x11 landscape right 243 < ? < 297 |acc_y| 2 ? |acc_x| + hyst and a cc_y 0 table 16 : meaning of the (0x0c) orient bits in low - asymmetrical mode (0x0c) orient name angle condition x00 portrait upright 333 < ? < 27 |acc_y| < 0.5 ? |acc_x| - hyst and acc_x - hyst 0 x01 portrait upside down 153 < ? < 207 |acc_y| < 0.5 ? |acc_x| - hyst and acc_x + hyst < 0 x10 landscape left 27 < ? < 153 |acc_y| 0.5 ? |acc_x| + hyst and acc_y < 0 x11 landscape right 207 < ? < 333 |acc_y| 0.5 ? |acc_x| + hyst and acc_y 0 in the preceding tab les, the parameter hyst stands for a hysteresis, which can be selected by setting the ( 0x 2 c ) orient_hyst bits. 1 lsb of ( 0x 2 c ) orient_hyst always corresponds to 62.5 mg, in any g - range (i.e. increment is independent from g - range setting). it is important to note that by using a hysteresis 0 the actual switching angles become different from the angles given in the tables since there is an overlap between the different orientations. the most significant bit of the (0x0c) orient bits (which is displayed a s an x in the above given tables) contains information about the direction of the z - axis. it is set to 0 (1) if acc_z 0 (acc_z < 0).
BMA250E d ata sheet page 36 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. figure 10 shows the typical switching conditions between the four different orientations for the symmetrical mode i.e. without hysteresis: figure 10 : typical orientation switching conditions w/o hysteresis the orientation interrupt is enabled (disabled) by writing 1 (0) to bit (0x16) orient_en . the interru pt is generated if the value of (0x0c) orient has changed. it is automatically cleared after one stable period of the (0x0c) orient value. the interrupt status is stored in the (0x09) orient_int bit. the register (0x0c) orient always reflects the current o rientation of the device, irrespective of which interrupt mode has been selected. bit (0x0c) orient <2> reflects the device orientation with respect to the z - axis. the bits (0x0c) orient <1:0> reflect the device orientation in the x - y - plane. the conventions associated with register (0x0c) orient are detailed in chapter 6. - 2 - 1 . 5 - 1 - 0 . 5 0 0 . 5 1 1 . 5 2 0 4 5 9 0 1 3 5 1 8 0 2 2 5 2 7 0 3 1 5 3 6 0 p h i a c c _ y / a c c _ x a c c _ x / s i n ( t h e t a ) a c c _ y / s i n ( t h e t a ) p o r t r a i t u p r i g h t l a n d s c a p e l e f t p o r t r a i t u p s i d e d o w n l a n d s c a p e r i g h t p o r t r a i t u p r i g h t - 2 - 1 . 5 - 1 - 0 . 5 0 0 . 5 1 1 . 5 2 0 4 5 9 0 1 3 5 1 8 0 2 2 5 2 7 0 3 1 5 3 6 0 ? p o r t r a i t u p r i g h t l a n d s c a p e l e f t p o r t r a i t u p s i d e d o w n l a n d s c a p e r i g h t p o r t r a i t u p r i g h t
BMA250E d ata sheet page 37 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.7.1 orientation blocking the change of the (0x0c) orient value and C as a consequence C the generation of the interrupt can be blocked according to conditions selected by setting the value of the (0x2c) orient_blocking bits as described by table 17 . table 17 : blocking conditions for orientation recognition (0x2c) orient_blocking conditions 00b no blocking 01b theta blo cking or acceleration in any axis > 1.5g 10b theta blocking or acceleration slope in any axis > 0.2 g or acceleration in any axis > 1.5g 11b theta blocking or acceleration slope in any axis > 0.4 g or acceleration in any axis > 1.5g and value of orient i s not stable for at least 100 ms the theta blocking is defined by the following inequality: the parameter blocking_theta of the above given equation stands for the contents of the (0x2d) orient_theta bits. i t is possible to de fine a blocking angle between 0 and 44.8. the internal blocking algorithm saturates the acceleration values before further processing. as a consequence, the blocking angles are strictly valid only for a device at rest; they can be different if the device is moved. example: to get a maximum blocking angle of 19 the parameter blocking_theta is determined in the following way: (8 * tan(19) )2 = 7.588, therefore, blocking_value = 8dec = 001000b has to be chosen. in order to avoid unwanted generation of th e orientation interrupt in a nearly flat position (z ~ 0, sign change due to small movements or noise), a hysteresis of 0.2 g is implemented for the z - axis, i. e. a after a sign change the interrupt is only generated after |z| > 0.2 g. 4.7.7.2 up - down interrupt s uppression flag per default an orientation interrupt is triggered when any of the bits in register (0x0c) orient changes state . the BMA250E can be configured to trigger orientation interrupts only when the . 8 _ tan theta blocking ? ?
BMA250E d ata sheet page 38 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. device position changes in the x - y - plane while ori entation changes with respect to the z - axis are ignored. a change of the orientation of the z - axis , and hence a state change of bit (0x0c) orient<2> is ignored (considered) when bit (0x2d) orient_ud_en is set to 0 (1).
BMA250E d ata sheet page 39 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.8 flat detection the flat detecti on feature gives information about the orientation of the devices z - axis relative to the g - vector, i. e. it recognizes whether the device is in a flat position or not. the flat angle ? is adjustable by (0x2e) flat_theta from 0 to 44.8 . t he flat angle can be set according to following formula: a hysteresis of the flat detection can be enabled by (0x2f) flat_hy bits. in this case the flat position is set if the an gle drops below following threshold : t he flat position is reset if the angle exceeds the following threshold : the flat interrupt is enabled (disabled) by writing 1 (0) to bit (0x16) flat_en . the flat value is stored in the (0x0c) flat bit if the interrupt is enabl ed. this value is 1 if the device is in the flat position, it is 0 otherwise. the flat interrupt is generated if the flat value has changed and the new value is stable for at least the time given by the (0x2f) flat_hold_time bits. a flat interrupt may be also generated if the flat interrupt is enabled. the actual status of the interrupt is stored in the (0x09) flat_int bit. the flat orientation of the sensor can always be determined from reading the (0x0c) flat bit after interrupt generation. if unlatch ed interrupt mode is used , the (0x09) flat_int value and hence the interrupt is automatically cleared after one sample period. if temporary or latched interrupt mode is used , the (0x09) flat_int value is kept fixed until the latch time expires or the inter rupt is reset. the meaning of the (0x2f) flat_hold_time bits can be seen from table 18 . table 18 : meaning of flat_hold_time (0x2f) flat_hold_time time 00b 0 01b 512 ms 10b 1024 ms 11b 2048 ms ? ? ? ? ? ? ? ? flat_theta 8 1 atan ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 16 _ 1024 _ 1 flat_theta 8 1 atan , hy flat hy flat ll hyst ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 16 _ 1024 _ 1 flat_theta 8 1 atan , hy flat hy flat ul hyst
BMA250E d ata sheet page 40 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.9 low - g interrupt this interrupt is based on the comparison of acceleration data against a low - g threshold, which is most useful for free - fall detection. the interrupt is enabled (disabled) by writing 1 (0) to the (0x17) low_en bit. there are two modes available, single mode and sum mode. in single mode, the acceleration of each axis is compared with the threshold; in sum mode, the sum of absolute values of all accelerations |acc_x| + |acc_y| + |acc_z| is compared with the thr eshold. the mode is selected by the contents of the (0x24) low_mode bit: 0 means single mode, 1 means sum mode. the low - g threshold is set through the (0x23) low_th register. 1 lsb of (0x23) low_th always corresponds to an acceleration of 7.81 mg (i.e. increment is independent from g - range setting). a hysteresis can be selected by setting the (0x24) low_hy bits. 1 lsb of (0x24) low_hy always corresponds to an acceleration difference of 125 mg in any g - range (as well, increment is independent from g - range setting). the low - g interrupt is generated if the absolute values of the acceleration of all axes (and relation, in case of single mode) or their sum (in case of sum mode) are lower than the threshold for at least the time defined by the (0x22) low_dur register. the interrupt is reset if the absolute value of the acceleration of at least one axis (or relation, in case of single mode) or the sum of absolute values (in case of sum mode) is higher than the threshold plus the hysteresis for at leas t one data acquisition. in bit (0x09) low_int the interrupt status is stored. the relation between the content of (0x22) low_dur and the actual delay of the interrupt generation is: delay [ms] = [ (0x22) low_dur + 1] ? 2 ms. therefore, possible delay times range from 2 ms to 512 ms.
BMA250E d ata sheet page 41 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.10 high - g interrupt this interrupt is based on the comparison of acceleration data against a high - g threshold for the detection of shock or other high - acceleration events. the high - g interrupt is enabled (disabled) per axis by wr iting 1 (0) to bits (0x17) high_en_x , (0x17) high_en_y , and (0x17) high_en_z , respectively. the high - g threshold is set through the (0x26) high_th register. the meaning of an lsb of (0x26) high_th depends on the selected g - range: it corresponds to 7.81 mg in 2g - range, 15.63 mg in 4g - range, 31.25 mg in 8g - range, and 62.5 mg in 16g - range (i.e. increment depends from g - range setting). a hysteresis can be selected by setting the (0x24) high_hy bits. analogously to (0x26) high_th , the meaning of an lsb of ( 0x24) high_hy is g - range dependent: i t corresponds to an acceleration difference of 125 mg in 2g - range, 250 mg in 4g - range, 500 mg in 8g - range, and 1000mg in 16g - range (as well, increment depends from g - range setting). the high - g interrupt is generated if the absolute value of the acceleration of at least one of the enabled axes (or relation) is higher than the threshold for at least the time defined by the (0x25) high_dur register. the interrupt is reset if the absolute value of the acceleration of all enabled axes (and relation) is lower than the threshold minus the hysteresis for at least the time defined by the (0x25) high_dur register. in bit (0x09) high_int the interrupt status is stored. the relation between the content of (0x25) high_dur and the actual delay of the interrupt generation is delay [ms] = [( 0x22) low_dur + 1] ? 2 ms. therefore, possible delay times range from 2 ms to 512 ms. the interrupt will be cleared immediately once acceleration is lower than threshold . 4.7.10.1 axis and sign informatio n of high - g interrupt the axis which triggered the interrupt is indicated by bits (0x0c) high_first_x , (0x0c) high_first_y , and (0x0c) high_first_z . the bit corresponding to the triggering axis contains a 1 while the other bits hold a 0. these bits are cleared together with clearing the interrupt status. the sign of the triggering acceleration is stored in bit (0x0c) high_sign . if (0x0c) high_sign = 0 (1), the sign is positive (negative).
BMA250E d ata sheet page 42 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.7.11 no - motion / slow motion detection the slow - motion/no - motion interrupt engine can be configured in two modes. in slow - motion mode an interrupt is triggered when the measured slope of at least one enabled axis exceeds the programmable slope threshold for a programmable number of samples. hence the engine behaves si milar to the any - motion interrupt, but with a different set of parameters. in order to suppress false triggers , the interrupt is only generated (cleared) if a certain number n of consecutive slope data points is larger (smaller) than the slope threshold gi ven by (0x27 ) slo_no_mot_dur<1:0> . the number is n = (0x27) slo _no_mot_dur<1:0> + 1 . in no - motion mode an interrupt is generated if the slope on all selected axes remains smaller than a programmable threshold for a programmable delay time. figure 11 shows the timing diagram for the no - motion interrupt. the scaling of the threshold value is identical to that of the slow - motion interrupt. however, in no - motion mode register (0x27) slo_no_mot_dur defines the delay time before the no - motion interrupt is trigge red. table 19 l ists the delay times adjustable with register (0x27) slo_no_mot_dur. the timer tick period is 1 second. hence using short delay times can result in considerable timing uncertainty. if bit (0x18) slo_no_mot_sel is s et to 1 (0) the no - motion/slow - motion interrupt engine is configured in the no - motion (slow - motion) mode. common to both modes, the engine monitors the slopes of the axes that have been enabled with bits (0x18) slo_no_mot_en_x , (0x18) slo_no_mot_en_y , and (0x18) slo_no_mot_en_z for the x - axis, y - axis and z - axis, respectively . the measured slope values are continuously compared against the threshold value defined in register (0x29) slo_no_mot_th . the scaling is such that 1 lsb of (0x29 ) slo_no_mot _th co rresponds to 3.91 mg in 2g - range (7.81 mg in 4g - range, 15.6 mg in 8g - range and 31.3 mg in 16g - range). therefore the maximum value is 996 mg in 2g - range (1.99g in 4g - range, 3.98g in 8g - range and 7.97g in 16g - range). the time difference between the successiv e acceleration s amples depends on the selected bandwidth and equates to 1/(2 * bw) . table 19 : no - motion time - out periods (0x27) slo_no_mot_dur delay t ime (0x27) slo_no_mot_dur delay t ime (0x27) slo_no_mot_dur delay time 0 1 s 16 4 0 s 32 88 s 1 2 s 17 4 8 s 33 96 s 2 3 s 18 56 s 34 104 s .. . .. . 19 64 s. .. . .. . 14 15 s 20 7 2 s 62 328 s 15 16 s 21 80 s 63 336 s note: slo_no_mot_dur values 22 to 31 are not specified
BMA250E d ata sheet page 43 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. figure 11 : timing of no - motion interrupt acceleration slo_no_mot_th - slo_no_mot_th slope time axis x, y, or z axis x, y, or z slo_no_mot_dur timer int slope (t 0 + t)= acc (t 0 + t) - acc (t 0 ) acc(t 0 + t) acc(t 0 )
BMA250E d ata sheet page 44 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 4.8 softreset a softreset causes all user configuration settings to be overwritten with their default value and the sensor to enter normal mode. a softreset is initiated by means of writing value 0xb6 to register ( 0x14) softreset . subs equently a waiting time of t w,up 1 (max.) is required prior to accessing any configuration registers.
BMA250E d ata sheet page 45 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 5. fifo operation 5.1 fifo operating modes the b m a25 0e featur e s an integrated fifo memory capable of storing up to 32 frames. conceptually each frame c onsists of three 16 bit words corresponding to the x, y and z - axis, which are sampled at the same point in time. at the core of the fifo is a buffer memory, which can be configured to operate in the following modes: ? fifo mode: i n fifo mode the accelerati on data of the selected axes are stored in the b uffer memory . if enabled, a watermark interrupt is triggered when the buffer has filled up to a configurable level. the buffer will be continuously filled until the fill level reaches 32 frames . when it is fu ll the data collection is stopped , and all additional samples are ignored. once the buffer is full, a fifo - full interrupt is generated if it has been enabled. ? stream mode: in stream mode the acceleration data of the selected axes are stored in the buffer until it is full. the buffer has a depth of 31 frames. when the b u ffer is full the data collection continues and oldest entry is discarded . if enabled, a watermark interrupt is triggered when the buffer is filled to a configurable level. once the buffer is full, a fifo - full interrupt is generated if it has been enabled. ? bypass mode: i n bypass mode, only the current sensor data can be read out from the fifo address. essentially, the fifo behaves like the stream mode with a depth of 1. c ompared to reading th e data from the normal data registers, the advantage to the user is that the packages x, y, z are from the same timestamp, while the data registers are updated sequentially and h e nce mixing of data from different axes can occur . the primary fifo operating mode is selected with register (0x3e) fifo_mode according to 00b for bypass mode, 01b for fifo mode, and 10b for stream mode. writing to register (0x3e) clears the buffer content and resets the fifo - full and watermark interrupts. when reading regist er (0x3e) fifo_mode always contains the current operating mode.
BMA250E d ata sheet page 46 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 5.2 f i fo data readout the fifo stores the data that are also available at the acceleration read - out registers (0x02) to (0x07) . thus, all configuration settings apply to the fifo data as well a s the acceleration data readout registers. the fifo read out is possible through register (0x3f) . the readout can be performed using burst mode since the read address counter is no longer incremented, when it has reached address (0x3f) . this implies that t he trapping also occurs when the burst read access starts below address (0x3f) . a single burst can read out one or more frames at a time. register (0x3e) fifo_data_select controls the acceleration data of which axes are stored in the fifo. possible setting s for register (0x3e) fifo_data_select are 00b for x, y - and z - axis, 01b for x - axis only, 10b for y - axis, 11b for z - axis only. the depth of the fifo is independent of whether all or a single axis have been selected. writing to register (0x3e) clear s the buffer content and resets the fifo - full and watermark interrupts. if all axes are enabled, the format of the data read - out from register (0x3f) is as follows : if only one axis is enabled, the format of the data read - ou t from register (0x3f) is as follows (example shown: y - axis only, other axes are equivalent). if a frame is not completely read due to an incomplete read operation, the remaining part of the frame is discarded. in this case th e fifo aligns to the next frame during the next read operation. in order for the discarding mechanism to operate correctly, there must be a delay of at least 1.5 us between the last data bit of the partially read frame and the first address bit of the next fifo read access. otherwise frames must not be read out partially. if the fifo is read beyond the fifo fill level zeroes (0) will be read. if the fifo is read beyond the fifo fill level the read or burst read access time must not exceed the sampling time t sample . otherwise frames may be lost. 5.3 fifo frame counter and overrun flag register (0x0e) fifo_frame_counter reflects the current fill level of the buffer. if additional frames are written to the buffer although the fifo is full, the (0x0e) fifo_overrun bit is set to 1. the fifo buffer is cleared, the fifo fill level indicated in register (0x0e) fifo_frame_counter and the (0x0e) fifo_overrun bit are both set to 0 each time one a write access to one of the fifo configuration registers (0x3e) or (0x30) occurs. the (0x0e) fifo_overrun bit is not reset when the fifo fill level (0x0e) fifo_frame_counter has decremented to 0 due to reading from register (0x3f) . frame 1 y lsb y msb y lsb y msb frame 2 frame 1 x lsb x msb y ls b y msb z lsb z msb
BMA250E d ata sheet page 47 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 5.4 fifo interrupts the fifo controller can generate two different interrupt events, a fifo - full an d a watermark event. the fifo - full and watermark interrupts are functional in all fifo operating modes. the watermark interrupt is asserted when the fill level in the buffer has reached the frame count defined by register (0x30) fifo_water_mark_trigger_ret ain . in order to enable (disable) the watermark interrupt, the (0x17) int_fwm_en bit must be set to 1 (0). to map the watermark interrupt signal to int1 pin (int2 pin) , (0x1a) int1_fwm ( (0x1a) int2_fwm ) bit must be set to 1 . the status of the waterma rk interrupt may be read back through the (0x0a) fifo_wm_int bit. writing to register (0x30) fifo_water_mark_trigger_retain clears the fifo buffer. the fifo - full interrupt is triggered when the buffer has been completely filled. in fifo mode this occurs 32 , in stream mode 31 samples, and in bypass mode 1 sample after the buffer has been cleared. in order to enable the fifo - full interrupt, bit (0x17) int_ffull_en as well as one or both of bits (0x1a) int1_fful or (0x1a) int2_fful must also be set to 1. the status of the fifo - full interrupt may be read back through bit (0x0a) fifo_full_int .
BMA250E d ata sheet page 48 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 6. register description 6.1 general remarks the entire communication with the device is performed by reading from and writing to registers. registers have a width of 8 bits; they are mapped to a common space of 64 addresses from (0x00) up to (0x3f) . within the used range there are several registers which are either completely or partially marked as reserved. any reserved bit is ignored when it is written and no specific valu e is guaranteed when read. it is recommended not to use registers at all which are completely marked as reserved. furthermore it is recommended to mask out (logical and with zero) reserved bits of registers which are partially marked as reserved. regist ers with addresses from (0x00) up to (0x0e) are read - only. any attempt to write to these registers is ignored. there are bits within some registers that trigger internal sequences. these bits are configured for write - only access, e. g. (0x21) reset_int or the entire (0x14) softreset register , and read as value 0.
BMA250E d ata sheet page 49 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 6.2 register map figure 12 : register map register address bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 access default 0x3f ro 0x00 0x3e w/r 0x00 0x3d w/r 0xff 0x3c w/r 0x00 0x3b w/r 0x00 0x3a w/r 0x00 0x39 w/r 0x00 0x38 w/r 0x00 0x37 cut_off w/r 0x00 0x36 offset_reset cal_rdy hp_z_en hp_y_en hp_x_en w/r 0x10 0x35 w/r 0x00 0x34 i2c_wdt_en i2c_wdt_sel spi3 w/r 0x00 0x33 nvm_load nvm_rdy nvm_prog_trig nvm_prog_mode w/r 0xf0 0x32 self_test_amp self_test_sign w/r 0x00 0x31 w/r 0xff 0x30 w/r 0x00 0x2f w/r 0x11 0x2e w/r 0x08 0x2d orient_ud_en w/r 0x48 0x2c w/r 0x18 0x2b w/r 0x0a 0x2a tap_quiet tap_shock w/r 0x04 0x29 w/r 0x14 0x28 w/r 0x14 0x27 w/r 0x00 0x26 w/r 0xc0 0x25 w/r 0x0f 0x24 low_mode w/r 0x81 0x23 w/r 0x30 0x22 w/r 0x09 0x21 reset_int w/r 0x00 0x20 int2_od int2_lvl int1_od int1_lvl w/r 0x05 0x1f w/r 0xff 0x1e int_src_data int_src_tap int_src_slo_no_mot int_src_slope int_src_high int_src_low w/r 0x00 0x1d w/r 0xff 0x1c w/r 0xff 0x1b int2_flat int2_orient int2_s_tap int2_d_tap int2_slo_no_mot int2_slope int2_high int2_low w/r 0x00 0x1a int2_data int2_fwm int2_ffull int1_ffull int1_fwm int1_data w/r 0x00 0x19 int1_flat int1_orient int1_s_tap int1_d_tap int1_slo_no_mot int1_slope int1_high int1_low w/r 0x00 0x18 slo_no_mot_sel slo_no_mot_en_z slo_no_mot_en_y slo_no_mot_en_x w/r 0x00 0x17 int_fwm_en int_ffull_en data_en low_en high_en_z high_en_y high_en_x w/r 0x00 0x16 flat_en orient_en s_tap_en d_tap_en slope_en_z slope_en_y slope_en_x w/r 0x00 0x15 w/r 0xff 0x14 wo 0x00 0x13 data_high_bw shadow_dis w/r 0x00 0x12 lowpower_mode sleeptimer_mode w/r 0x00 0x11 suspend lowpower_en deep_suspend w/r 0x00 0x10 w/r 0x0f 0x0f w/r 0x03 0x0e fifo_overrun ro 0x00 0x0d w/r 0xff 0x0c flat high_sign high_first_z high_first_y high_first_x ro 0x00 0x0b tap_sign tap_first_z tap_first_y tap_first_x slope_sign slope_first_z slope_first_y slope_first_x ro 0x00 0x0a data_int fifo_wm_int fifo_full_int ro 0x00 0x09 flat_int orient_int s_tap_int d_tap_int slo_no_mot_int slope_int high_int low_int ro 0x00 0x08 ro 0x00 0x07 ro 0x00 0x06 new_data_z ro 0x00 0x05 ro 0x00 0x04 new_data_y ro 0x00 0x03 ro 0x00 0x02 new_data_x ro 0x00 0x01 ro -- 0x00 ro 0xf9 chip_id<7:0> acc_y_msb<9:2> acc_x_msb<9:2> orient_blocking<1:0> high_th<7:0> slo_no_mot_dur<5:0> tap_th<4:0> orient_theta<5:0> acc_z_msb<9:2> offset_target_y<1:0> offset_target_x<1:0> slope_dur<1:0> slope_th<7:0> high_dur<7:0> tap_dur<2:0> self_test_axis<1:0> fifo_data_output_register<7:0> gp0<7:0> offset_z<7:0> fifo_water_mark_level_trigger_retain<5:0> offset_target_z<1:0> cal_trigger<1:0> offset_x<7:0> fifo_mode<1:0> offset_y<7:0> gp1<7:0> low_th<7:0> flat_hy<2:0> flat_theta<5:0> slo_no_mot_th<7:0> orient_mode<1:0> tap_samp<1:0> orient_hyst<2:0> high_hy<1:0> fifo_data_select<1:0> flat_hold_time<1:0> nvm_remain<3:0> orient<2:0> temp<7:0> low_dur<7:0> bw<4:0> range<3:0> softreset latch_int<3:0> sleep_dur<3:0> fifo_frame_counter<6:0> acc_z_lsb<1:0> acc_y_lsb<1:0> acc_x_lsb<1:0> low_hy<1:0> common w/r registers: application specific settings which are not equal to the default settings, must be re-set to its designated values after por, soft-reset and wake up from deep suspend. user w/r registers: initial default content = 0x00. freely programmable by the user. remains unchanged after por, soft-reset and wake up from deep suspend.
BMA250E d ata sheet page 50 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x00 ( bgw_ chip i d) the register c on tains the chip identification code. name 0x00 bgw_chipid bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content chip_id<7:4> bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content chip_id<3:0> chip_id<7:0>: fixed value b1 11110 0 1 register 0x02 (accd_x_lsb) the register contains the least - significant bits of the x - channel acceleration readout value. when reading out x - channel acceleration values, data consistency is guaranteed if the accd_x_lsb is read out before the accd_x_msb and shadow_dis=0. in this case, after the accd_x_lsb ha s been read, the value in the accd_x_msb register is locked until the accd_x_msb has been read. this condition is inherently fulfilled if a burst - mode read access is performed. acceleration data may be read from register accd_x_lsb at any time except duri ng power - up and in deep_suspend mode. name 0x02 accd_x_lsb bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content acc_x_lsb<1:0> undefined undefined bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content undefined undefine d undefined new_data_x acc_x_lsb< 1 :0>: least significant 2 bits of acceleration read - back value; (twos - complement format) undefined: random data; to be ignored. new_data_x: ?0: acceleration value has not been updated since it has been read out last ? 1: acceleration value has been updated since it has been read out last
BMA250E d ata sheet page 51 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x03 (accd_x_msb) the register contains the most - significant bits of the x - channel acceleration readout value. when reading out x - channel acceleration values, data consistency is guaranteed if the accd_x_lsb is read out before the accd_x_msb and shadow_dis=0. in this case, after the accd_x_lsb has been read, the value in the accd_x_msb register is locked until the accd_x_msb has been read. this condition is inherently fulfill ed if a burst - mode read access is performed. acceleration data may be read from register accd_x_msb at any time except during power - up and in deep_suspend mode. name 0x02 accd_x_msb bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content ac c_x_msb< 9 : 6 > bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content acc_x_msb< 5 : 2 > acc_x_msb< 9 : 2 >: most significant 8 bits of acceleration read - back value (twos - complement format)
BMA250E d ata sheet page 52 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x04 (accd_y_lsb) the register contains the l east - significant bits of the y - channel acceleration readout value. when reading out y - channel acceleration values, data consistency is guaranteed if the accd_y_lsb is read out before the accd_y_msb and shadow_dis=0. in this case, after the accd_y_lsb has been read, the value in the accd_y_msb register is locked until the accd_y_msb has been read. this condition is inherently fulfilled if a burst - mode read access is performed. acceleration data may be read from register accd_y_lsb at any time except during power - up and in deep_suspend mode. name 0x04 accd_y_lsb bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content acc_y_lsb<1:0> undefined undefined bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content undefined undefined undefined new_data_y acc_y_lsb< 1 :0>: least significant 2 bits of acceleration read - back value; (twos - complement format) undefined: random data; to be ignored new_data_y: ?0: acceleration value has not been updated since it has been read out last ?1: acceleration value has been updated since it has been read out last
BMA250E d ata sheet page 53 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x05 (accd_y_msb) the register contains the most - significant bits of the y - channel acceleration readout value. when reading out y - channel acceleration values, data consistency i s guaranteed if the accd_y_lsb is read out before the accd_y_msb and shadow_dis=0. in this case, after the accd_y_lsb has been read, the value in the accd_y_msb register is locked until the accd_y_msb has been read. this condition is inherently fulfilled if a burst - mode read access is performed. acceleration data may be read from register accd_y_msb at any time except during power - up and in deep_suspend mode. name 0x05 accd_y_msb bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content acc_ y_msb< 9 : 6 > bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content acc_y_msb< 5 : 2 > acc_y_msb< 9 : 2 >: most significant 8 bits of acceleration read - back value (twos - complement format)
BMA250E d ata sheet page 54 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x06 (accd_z_lsb) the register contains the leas t - significant bits of the z - channel acceleration readout value. when reading out z - channel acceleration values, data consistency is guaranteed if the accd_z_lsb is read out before the accd_z_msb and shadow_dis=0. in this case, after the accd_z_lsb has be en read, the value in the accd_z_msb register is locked until the accd_z_msb has been read. this condition is inherently fulfilled if a burst - mode read access is performed. acceleration data may be read from register accd_z_lsb at any time except during po wer - up and in deep_suspend mode. name 0x06 accd_z_lsb bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content acc_z_lsb<1:0> undefined undefined bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content undefined undefined und efined new_data_z acc_z_lsb< 1 :0>: least significant 2 bits of acceleration read - back value; (twos - complement format) undefined: random data; to be ignored new_data_z: ?0: acceleration value has not been updated since it has been read out last ?1: ac celeration value has been updated since it has been read out last
BMA250E d ata sheet page 55 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x07 (accd_z_msb) the register contains the most - significant bits of the z - channel acceleration readout value. when reading out z - channel acceleration values, data consistency is g uaranteed if the accd_z_lsb is read out before the accd_z_msb and shadow_dis=0. in this case, after the accd_z_lsb has been read, the value in the accd_z_msb register is locked until the accd_z_msb has been read. this condition is inherently fulfilled if a burst - mode read access is performed. acceleration data may be read from register accd_z_msb at any time except during power - up and in deep_suspend mode. name 0x07 accd_z_msb bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content acc_z_m sb< 9 : 6 > bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content acc_z_msb< 5 : 2 > acc_z_msb< 9 : 2 >: most significant 8 bits of acceleration read - back value (twos - complement format)
BMA250E d ata sheet page 5 6 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x08 ( accd_temp ) the register contains the curren t chip temperature represented in twos complement format. a readout value of temp<7:0>=0x00 co rresponds to a temperature of 23 c. name 0x08 accd_temp bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content temp<7:4> bit 3 2 1 0 read/wr ite r r r r reset value n/a n/a n/a n/a content temp<3:0> temp<7:0>: temperature value (two s - complement format)
BMA250E d ata sheet page 57 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x09 (int_status_0) the register contains interrupt status flags. each flag is associated with a specific interrupt function. i t is set when the associated interrupt triggers. the setting of latch_int<3:0> controls if the interrupt signal and hence the respective interrupt flag will be permanently latched, temporarily latched or not latched. the interrupt function associated with a specific status flag must be enabled. name 0x09 int_status_0 bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content flat_int orient_int s_tap_int d_tap_int bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content slo_no_mo t_int slope_int high_int low_int flat_int: flat interrupt status: 0 ? inactive, 1 ? active orient_int: orientation interrupt status: 0 ? inactive, 1 ? active s_tap_int: single tap interrupt status: 0 ? inactive, 1 ? active d_tap_int double tap inter rupt status: 0 ? inactive, 1 ? active slo_not_mot_int: slow/no - motion interrupt status : 0 ? inactive, 1 ? active slope_int: slope interrupt status : 0 ? inactive, 1 ? active high_int: high - g interrupt status : 0 ? inactive, 1 ? active low_int: low - g inte rrupt status : 0 ? inactive, 1 ? active
BMA250E d ata sheet page 58 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x0a (int_status_1) the register contains interrupt status flags. each flag is associated with a specific interrupt function. it is set when the associated interrupt engine triggers. the setting of latch_in t<3:0> controls if the interrupt signal and hence the respective interrupt flag will be permanently latched, temporarily latched or not latched. the interrupt function associated with a specific status flag must be enabled. name 0x0a int_status_1 bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content data_int fifo_wm_int fifo_full_int reserved bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content reserved data_int: data ready interrupt status: 0 ? inactive, 1 ? active fifo_wm_int: fifo watermark interrupt status: 0 ? inactive, 1 ? active fifo_full_int: fifo full interrupt status: 0 ? inactive, 1 ? active reserved: reserved, write to 0
BMA250E d ata sheet page 59 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x0b (int_status_2) the register contains interrupt status flags. each flag is associated with a specific interrupt engine. it is set when the associated interrupt engine triggers. the setting of latch_int<3:0> controls if the interrupt signal and hence the respective interrupt flag will be permanently latched, temporarily la tched or not latched. the interrupt function associated with a specific status flag must be enabled. name 0x0b int_status_2 bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content tap_sign tap_first_z tap_first_y tap_first_x bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content slope_sign slope_first_z slope_first_y slope_first_x tap_sign: sign of single/double tap triggering signal was 0 ? positive, or 1 ? negative tap_first_z: single/double tap interrupt: 1 ? trig gered by, or 0 ? not triggered by z - axis tap_first_y: single/double tap interrupt: 1 ? triggered by, or 0 ? not triggered by y - axis tap_first_x: single/double tap interrupt: 1 ? triggered by, or 0 ? not triggered by x - axis slope_sign: slope sign of sl ope tap triggering signal was 0 ? positive, or 1 ? negative slope_first_z: slope interrupt: 1 ? triggered by, or 0 ? not triggered by z - axis slope_first_y: slope interrupt: 1 ? triggered by, or 0 ? not triggered by y - axis slope_first_x: slope interrup t: 1 ? triggered by, or 0 ? not triggered by x - axis
BMA250E d ata sheet page 60 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x0c (int_status_3) the register contains interrupt status flags. each flag is associated with a specific interrupt engine. it is set when the associated interrupt engine triggers. with the ex ception of orient<3:0> the setting of latch_int<3:0> controls if the interrupt signal and hence the respective interrupt flag will be permanently latched, temporarily latched or not latched. the interrupt function associated with a specific status flag mus t be enabled. name 0x0c int_status_3 bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content flat orient<2:0> bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content high_sign high_first_z high_first_y high_first_x flat: device is in 1 ? flat, or 0 ? non flat position; only valid if (0x16) flat_en = 1 orient<2>: o rientation value of z - axis : 0 ? upward looking, or 1 ? downwa rd looking. the flag always reflect the current orientation status, independent of the set ting of latch_int<3:0>. the flag is not updated as long as an orientation blocking condition is active. orient<1:0>: orientation value of x - y - plane: 00 ? portrait upright; 01 ? portrait upside down; 10 ? landscape left; 11 ? landscape right; the flags a lways reflect the current orientation status, independent of the setting of latch_int<3:0>. the flag is not updated as long as an orientation blocking condition is active. high_sign: sign of acceleration signal that triggered high - g interrupt was 0 ? posi tive, 1 ? negative high_first_z: high - g interrupt: 1 ? triggered by, or 0 ? not triggered by z - axis high_first_y: high - g interrupt: 1 ? triggered by, or 0 ? not triggered by y - axis high_first_x: high - g interrupt: 1 ? triggered by, or 0 ? not trigger ed by x - axis
BMA250E d ata sheet page 61 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x0e (fifo_status) the register contains fifo status flags. name 0x0e fifo_status bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content fifo_overrun fifo_frame_counter<6:4> bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content fifo_frame_counter<3:0> fifo_overrun: fifo overrun condition has 1 ? occurred, or 0 ? not occurred; flag can be cleared by writing to the fifo configuration register fifo_config_1 only fifo_frame_counter<6:4>: current f ill level of fifo buffer. an empty fifo corresponds to 0x00. the frame counter can be cleared by reading out all frames from the fifo buffer or writing to the fifo configuration register fifo_config_1.
BMA250E d ata sheet page 62 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x0f (pmu_range) the register allows the sel ection of the accelerometer g - range . name 0x0f pmu_range bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved 0 bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 1 1 content range<3:0> range<3:0>: selection of accele rometer g - range: 0011b ? 2g range; 0101b ? 4g range; 1000b ? 8g range; 1100b ? 16g range; a ll other settings ? reserved ( do not use) reserved: write 0 register 0x10 (pmu_bw) the register allows the selection of the acceleration da ta filter bandwidth . name 0x10 pmu_bw bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved bw<4> 0 bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 1 1 1 1 content bw<3:0> bw< 4 :0>: selection of data filter bandwidth: 00xxxb ? 7.81 hz, 01000b ? 7.81 hz, 01001b ? 15.63 hz, 01010b ? 31.25 hz, 01011b ? 62.5 hz, 01100b ? 125 hz, 01101b ? 250 hz, 01110b ? 500 hz, 01111b ? 1000 hz, 1xxxxb ? 1000 hz reserved: write 0
BMA250E d ata sheet page 63 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x11 (pmu_lpw) s electi on of the main power modes and the low power sleep period. name 0x11 pmu_lpw bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content suspend lowpower_en deep_suspend sleep_dur<3> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content sleep_dur<2:0> reserved suspend, low_power_en, deep_suspend: main power mode configuration setting {suspend; lowpower_en; deep_suspend}: {0; 0; 0} ? normal mode; {0; 0; 1} ? deep_suspend mode; {0; 1; 0} ? low_power mode; {1; 0; 0} ? suspend mode; {all other} ? illegal please note that only certain power mode transitions are permitted. sleep_dur<3:0>: configures the sleep phase duration in low_power mode: 0000b to 0101b ? 0.5 ms, 0110b ? 1 ms , 0111b ? 2 ms , 1000b ? 4 ms , 10 01b ? 6 ms , 1010b ? 10 ms , 1011b ? 25 ms , 1100b ? 50 ms, 1101b ? 100 ms , 1110b ? 500 ms, 1111b ? 1 s please note, that all application specific settings which are not equal to the default settings (refer to 6.2 register map), mus t be re - set to its designated values after deep_suspend.
BMA250E d ata sheet page 64 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x12 (pmu_low_ power ) configuration settings for low power mode. name 0x12 pmu_low_ power bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved lowpower_mode sleept imer_mode reserved bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved lowpower_mode: select 0 ? lpm1, or 1 ? lpm2 configuration for suspend and low_power mode. in the lpm1 configuration the power consumption in low_powe r mode and suspend mode is significantly reduced when compared to lpm2 configuration, but the fifo is not accessible and writing to registers must be slowed down. in the lpm2 configuration the power consumption in low_power mode is reduced compared to norm al mode, but the fifo is fully accessible and registers can be written to at full speed. sleeptimer_mode: when in low_power mode 0 ? use event - driven time - base mode (compatible with bma250), or 1 ? use equidistant sampling time - base mode. equidistant sampling of data into the fifo is maintained in equidistant time - base mode only. reserved: write 0
BMA250E d ata sheet page 65 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x13 (accd_hbw) acceleration data acquisition and data output format. name 0x13 accd_hbw bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 (1 in 8 - bit mode) 0 0 content data_high_bw shadow_dis reserved bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved data_high_bw: select whether 1 ? unfiltered, or 0 ? filtered data may be read from the acceleration da ta registers. shadow_dis: 1 ? disable, or 0 ? the shadowing mechanism for the acceleration data output registers. when shadowing is enabled, the content of the acceleration data component in the msb register is locked, when the component in the lsb is re ad, thereby ensuring the integrity of the acceleration data during read - out. the lock is removed when the msb is read. reserved: write 0
BMA250E d ata sheet page 66 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x14 (bgw_softreset) controls user triggered reset of the sensor. name 0x14 bgw_softreset bit 7 6 5 4 r ead/write w w w w reset value 0 0 0 0 content softreset bit 3 2 1 0 read/write w w w w reset value 0 0 0 0 content softreset softreset: 0xb6 ? triggers a reset. other values are ignored. following a delay, all user configuration settings are over written with their default state or the setting stored in the nvm, wherever applicable. this register is functional in all operation modes. please note that all application specific settings which are not equal to the default settings (refer to 6.2 registe r map), must be reconfigured to their designated values. register 0x16 (int_en_0) controls which interrupt engines in group 0 are enabled. name 0x16 int_en_0 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content flat_en orient_en s_tap_en d_tap_en bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved slope_en_z slope_en_y slope_en_x flat_en: flat interrupt: 0 ? disabled, or 1 ? enabled orient_en: orientation interrupt: 0 ? disabled, or 1 ? enabled s_tap_en: single tap interrupt: 0 ? disabled, or 1 ? enabled d_tap_en double tap interrupt: 0 ? disabled, or 1 ? enabled reserved: write 0 slope_en_z: slope interrupt, z - axis component: 0 ? disabled, or 1 ? enabled slope_en_y: slope interrupt, y - axis component : 0 ? disabled, or 1 ? enabled slope_en_x: slope interrupt, x - axis component: 0 ? disabled, or 1 ? enabled
BMA250E d ata sheet page 67 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x17 (int_en_1) controls which interrupt engines in group 1 are enabled. name 0x17 int_en_1 bit 7 6 5 4 read/write r/w r/w r/w r/w res et value 0 0 0 0 content reserved int_fwm_en int_ffull_en data_en bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content low_en high_en_z high_en_y high_en_x reserved: write 0 int_fwm_en: fifo watermark interrupt: 0 ? disabled, or 1 ? enabled int_ffull_en: fifo full interrupt: 0 ? disabled, or 1 ? enabled data_en data ready interrupt: 0 ? disabled, or 1 ? enabled low_en: low - g interrupt: 0 ? disabled, or 1 ? enabled high_en_z: high - g interrupt, z - axis component: 0 ? disabled, or 1 ? enabled high_en_y: high - g interrupt, y - axis component: 0 ? disabled, or 1 ? enabled high_en_x: high - g interrupt, x - axis component: 0 ? disabled, or 1 ? enabled
BMA250E d ata sheet page 68 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x18 (int_en_2) controls which interrupt engines in group 2 are enabled. name 0x18 int_en_2 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content slo_no_mot_sel slo_no_mot_en_z slo_no_mot_en_y slo_no_mot_en_x reserved: write 0 sl o_no_mot_sel: select 0 ? slow - motion, 1 ? no - motion interrupt function slo_no_mot_en_z: slow/n - motion interrupt, z - axis component : 0 ? disabled, or 1 ? enabled slo_no_mot_en_y: slow/n - motion interrupt, y - axis component : 0 ? disabled, or 1 ? enabled slo_ no_mot_en_x: slow/n - motion interrupt, x - axis component : 0 ? disabled, or 1 ? enabled
BMA250E d ata sheet page 69 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x19 (int_map_0) controls which interrupt signals are mapped to the int1 pin. name 0x19 int_map_0 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content int1_flat int1_orient int1_s_tap int1_d_tap bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content int1_slo_no_mot int1_slope int1_high int1_low int1_flat: map flat interrupt to int1 pin: 0 ? disabled, or 1 ? enabled int1_or ient: map orientation interrupt to int1 pin: 0 ? disabled, or 1 ? enabled int1_s_tap: map single tap interrupt to int1 pin: 0 ? disabled, or 1 ? enabled int1_d_tap: map double tap interrupt to int1 pin: 0 ? disabled, or 1 ? enabled int1_slo_no_mot: map slow/no - motion interrupt to int1 pin: 0 ? disabled, or 1 ? enabled int1_ slope: map slope interrupt to int1 pin : 0 ? disabled, or 1 ? enabled int1_high : map high - g to int1 pin : 0 ? disabled, or 1 ? enabled int1_ low: map low - g to int1 pin : 0 ? disabled, o r 1 ? enabled
BMA250E d ata sheet page 70 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x1a (int_map_1) controls which interrupt signals are mapped to the int1 and int2 pins. name 0x1a int_map_1 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content int2_data int2_fwm int2_ffull reserved bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved int1_ffull int1_fwm int1_data int2_data: map data ready interrupt to int2 pin: 0 ? disabled, or 1 ? enabled int2_fwm: map fifo watermark interrupt to int2 pin: 0 ? disabled, or 1 ? e nabled int2_ffull: map fifo full interrupt to int2 pin: 0 ? disabled, or 1 ? enabled reserved: write 0 int1_ffull: map fifo full interrupt to int1 pin: 0 ? disabled, or 1 ? enabled int1_fwm: map fifo watermark interrupt to int1 pin: 0 ? disabled, or 1 ? enabled int1_data: map data ready interrupt to int1 pin: 0 ? disabled, or 1 ? enabled
BMA250E d ata sheet page 71 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x1b (int_map_2) controls which interrupt signals are mapped to the int2 pin. name 0x1b int_map_2 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content int2_flat int2_orient int2_s_tap int2_d_tap bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content int2_slo_no_mot int2_slope int2_high int2_low int2_flat: map flat interrupt to int2 pin: 0 ? disabled, or 1 ? enabled int 2_orient: map orientation interrupt to int2 pin: 0 ? disabled, or 1 ? enabled int2_s_tap: map single tap interrupt to int2 pin: 0 ? disabled, or 1 ? enabled int2_d_tap: map double tap interrupt to int2 pin: 0 ? disabled, or 1 ? enabled int2_slo_no_mot: map slow/no - motion interrupt to int2 pin: 0 ? disabled, or 1 ? enabled int2_ slope: map slope interrupt to int2 pin : 0 ? disabled, or 1 ? enabled int2_high : map high - g to int2 pin : 0 ? disabled, or 1 ? enabled int2_ low: map low - g to int2 pin : 0 ? disable d, or 1 ? enabled
BMA250E d ata sheet page 72 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x1e (int_src) c ontains the data source definition for interrupts with selectable data source. name 0x1e int_src bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved int_src_data int_src_tap bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content int_src_slo_no_m ot int_src_slope int_src_high int_src_low reserved: write 0 int_src_data: select 0 ? filtered, or 1 ? unfiltered data for new data interrupt int_src_tap: select 0 ? filt ered, or 1 ? unfiltered data for single - /double tap interrupt int_src_slo_no_mot: select 0 ? filtered, or 1 ? unfiltered data for slow/no - motion interrupt int_src_ slope: select 0 ? filtered, or 1 ? unfiltered data for slope interrupt int_src_high : selec t 0 ? filtered, or 1 ? unfiltered data for high - g interrupt int_src_ low: select 0 ? filtered, or 1 ? unfiltered data for low - g interrupt
BMA250E d ata sheet page 73 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x20 (int_out_ctrl) c ontains the behavioural configuration (electrical behaviour) of the interrupt pins. n ame 0x20 int_out_ctrl bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 1 0 1 content int2_od int2_lvl int1_od int1_lvl reserved: write 0 int2_od: select 0 ? push - pull, or 1 ? open drain behavior for int2 pin int2_lvl: select 0 ? active low, or 1 ? active high level for int2 pin int1_od: select 0 ? push - pull, or 1 ? open drain behavior for int1 pin int1_lvl: select 0 ? active low, or 1 ? active high level for int 1 pin
BMA250E d ata sheet page 74 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x21 (int_rst_latch) c ontains the interrupt reset bit and the interrupt mode selection. name 0x21 int_rst_latch bit 7 6 5 4 read/write w r/w r/w r/w reset value 0 0 0 0 content reset_int r eserved bit 3 2 1 0 read/write r/w r/w r/w r /w reset value 0 0 0 0 content latch_int<3:0> reset_int: write 1 ? clear any latched interrupts, or 0 ? keep latched interrupts active reserved: write 0 latch_int<3:0>: 0000b ? non - latched, 0001b ? temporary, 250 ms , 0010b ? temporary, 500 ms , 0011b ? temporary, 1 s , 0100b ? temporary, 2 s , 0101b ? temporary, 4 s , 0110b ? temporary, 8 s , 0111b ? latched , 1000b ? non - latched , 1001 b ? temporary, 2 50 ? s , 1010b ? temporary, 500 ? s , 1011b ? temporary, 1 ms , 1100 b ? temporary, 12.5 ms , 1101b ? temporary, 25 ms , 1110b ? temporary, 50 ms , 1111b ? latched register 0x22 (int_0) c ontains the delay time definition for the low - g interrupt. name 0x22 int_0 bit 7 6 5 4 read/write w r/w r/w r/w reset value 0 0 0 0 content low_dur<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 1 0 0 1 content low_dur<3:0> low_dur<7:0>: low - g interrupt trigger delay according to [ low_dur <7:0> + 1] ? 2 ms in a range from 2 ms to 512 ms ; the default corresponds to a delay of 20 ms.
BMA250E d ata sheet page 75 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x23 (int_1) c ontains the threshold definition for the low - g interrupt. name 0x23 int_1 bit 7 6 5 4 read/write w r/w r/w r/w reset value 0 0 1 1 content low_th<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content low_th<3:0> low_ th <7:0>: low - g interrupt trigger threshold according to low_ th<7:0> ? 7.81 mg in a range from 0 g to 1.992 g ; the default value corresponds to an acceleration of 375 mg register 0x24 (int_2) c ontains the low - g interrupt mod e selection, the low - g interrupt hysteresis setting, and the high - g interrupt hysteresis setting . name 0x24 int_2 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 1 0 0 0 content high_hy<1:0> reserved bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 1 content reserved low_mode low_hy<1:0> high_hy<1 :0>: hysteresis of high - g interrupt according to high_hy<1:0> 125 mg (2 - g range), high_hy<1:0> 250 mg (4 - g range), high_hy<1:0> 500 mg (8 - g range), or high_hy<1:0> 1000 mg (16 - g rang e) low_mode: select low - g interrupt 0 single - axis mode, or 1 axis - summing mode low_hy<1 :0>: hysteresis of low - g interrupt according to low_hy<1:0> 125 mg independent of the selected accelerometer g - range
BMA250E d ata sheet page 76 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x25 (int_3) c ontains the delay time definition for the high - g interrupt . name 0x25 int_3 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content high_dur<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 1 1 1 1 content high_dur<3:0> high _dur<7:0>: high - g inter rupt trigger delay according to [ high _dur <7:0> + 1] ? 2 ms in a range from 2 ms to 512 ms; the default corresponds to a delay of 32 ms. register 0x26 (int_4) c ontains the threshold definition for the high - g interrupt . name 0x26 int_4 bit 7 6 5 4 read/w rite r/w r/w r/w r/w reset value 1 1 0 0 content high_th<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content high_th<3:0> high _ th <7:0>: threshold of high - g interrupt according to high_th<7:0> 7.81 mg (2 - g range), high_th<7:0> 15.63 mg (4 - g range), high_th<7:0> 31.25 mg (8 - g range), or high_th<7:0> 62.5 mg (16 - g range)
BMA250E d ata sheet page 77 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x27 (int_5) c ontains the definition of the number of samples to be evaluated for the slope interrupt (any - motion detection) and the slow/no - moti on interrupt trigger delay . name 0x27 int_5 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content slo_no_mot_dur<5:2> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content slo_no_mot_dur<1:0> slope_dur<1:0> slo_no_mot _dur<5:0>: function depends on whether the slow - motion or no - motion interrupt function has been selected. if the slow - motion interrupt function has been enabled (slo_no_mot_sel = 0) then [slo_no_mot_dur<1:0>+1] consecutive slope data points must be above the slow/no - motion threshold (slo_no_mot_th) for the slow - /no - motion interrupt to trigger. if the no - motion interrupt function has been enabled (slo_no_mot_sel = 1) then slo_no_motion_dur<5:0> defines the time for which no slope data points must exceed the slow/no - motion threshold (slo_no_mot_th) for the slow/no - motion interrupt to trigger. the delay time in seconds may be calculated according with the following equation: slo_no_mot_dur<5:4>=b00 ? [slo_no_mot_dur<3:0> + 1] slo_no_mot_dur<5:4>=b01 ? [slo_no_mot_dur<3:0> 4 + 20] slo_no_mot_dur<5>=1 ? [slo_no_mot_dur<4:0> 8 + 88] slope_dur<1:0>: slope interrupt triggers if [slope_dur<1:0>+1] consecutive slope data points are above the slope interrupt threshold slope_th<7:0>
BMA250E d ata sheet page 78 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x28 (int_6) c ontains the threshold definition for the any - motion interrupt . name 0x28 int_6 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 1 content slope_th<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 1 0 0 content slope_th<3:0> s lope _ th <7:0>: threshold of the any - motion interrupt . it is range - dependent and defined as a sample - to - sample difference according to slope _th<7:0> 3 . 9 1 mg (2 - g range) / slope _th<7:0> 7.81 mg (4 - g range) / slope _th<7:0> 15.6 3 mg (8 - g range) / slope _th <7:0> 31.25 mg (16 - g range) register 0x29 (int_7) c ontains the threshold definition for the slow/no - motion interrupt . name 0x29 int_7 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 1 content slo_no_mot_th<7:4> bit 3 2 1 0 read/write r/ w r/w r/w r/w reset value 0 1 0 0 content slo_no_mot_th<3:0> slo _no_mot _ th <7:0>: threshold of slow/no - motion interrupt . it is range - dependent and defined as a sample - to - sample difference according to slo _no_mot _th<7:0> 3. . 9 1 mg (2 - g range) , slo _no_m ot _th<7:0> 7 . 81 mg (4 - g range), slo _no_mot _th<7:0> 1 5 . 63 mg (8 - g range), slo _no_mot _th<7:0> 31 . 2 5 mg (16 - g range)
BMA250E d ata sheet page 79 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x2a (int_8) c ontains the timing definitions for the single tap and double tap interrupts. name 0x2a int_8 bit 7 6 5 4 rea d/write r/w r/w r/w r/w reset value 0 0 0 0 content tap_quiet tap_shock reserved reserved bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 1 0 0 content reserved tap_dur<2:0> tap_quiet : selects a tap quiet duration of 0 ? 3 0 ms, 1 ? 2 0 ms t ap_shock: selects a tap shock duration of 0 ? 50 ms, 1 ? 75 ms reserved: write 0 tap_dur<2:0>: selects the length of the time window for the second shock event for double tap detection according to 000b ? 50 ms , 001b ? 100 ms , 010b ? 150 ms , 011b ? 200 ms , 100b ? 250 ms , 101b ? 375 ms , 110b ? 500 ms, 111b ? 700 ms .
BMA250E d ata sheet page 80 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x2b (int_9) c ontains the definition of the number of samples processed by the single / double - tap interrupt engine after wake - up in low - power mode . it also defines t he threshold definition for the single and double tap interrupts . name 0x2b int_9 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content tap_samp<1:0> reserved tap_th<4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 1 0 1 0 conte nt tap_th<3:0> tap_samp<1:0> : selects the number of samples that are processed after wake - up in the low - power mode according to 00b ? 2 samples , 01b ? 4 samples , 10b ? 8 samples , and 11b ? 16 samples reserved: write 0 tap_th< 4 :0>: threshold o f the single/double - tap interrupt corresponding to an acceleration difference of tap_th< 4 :0> 62.5mg ( 2g - range ) , tap_th< 4 :0> 125mg ( 4g - range ) , tap_th< 4 :0> 250mg ( 8g - range ) , and tap_th< 4 :0> 500mg ( 16g - range ) .
BMA250E d ata sheet page 81 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x2c (int_a) c ontains the d efinition of hysteresis, blocking, and mode for the orientation interrupt name 0x2c int_a bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 1 content reserved orient_hyst<2:0> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 1 0 0 0 cont ent orient_blocking<1:0> orient_mode<1:0> reserved: write 0 orient_hyst<2:0>: sets the hysteresis of the orientation interrupt; 1 lsb corresponds to 62.5 mg irrespective of the selected g - range orient_blocking<1:0>: selects the blocking mode that is used for the generation of the orientation interrupt . the following blocking modes are available: 00b ? no blocking , 01b ? theta blocking or acceleration in any axis > 1.5g , 10b ? , theta blocking or acceleration slope in any axis > 0.2 g or ac celeration in any axis > 1.5g 11b ? theta blocking or acceleration slope in any axis > 0.4 g or acceleration in any axis > 1.5g and value of orient is not stable for at least 100ms orient_mode<1:0>: sets the thresholds for switching between the dif fe rent orientations. the settings: 00b ? symmetrical , 01b ? high - asy mmetrical , 10b ? low - as ymmetrical, 11b ? symmetrical .
BMA250E d ata sheet page 82 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x2d (int_b) c ontains the definition of the axis orientation, up/down masking, and the theta blocking angle for the orientation interrupt. name 0x2d int_b bit 7 6 5 4 read/write r/w r/w r/w r/w reset value n/a 1 0 0 content reserved orient_ud_en orient_theta<5:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 1 0 0 0 content orient_theta<3:0> orient_ud _en: change of up/down - bit 1 ? generates an orientation interrupt, 0 ? is ignored and will not generate an orientation interrupt orient_theta<5:0>: defines a blocking angle between 0 and 44.8 register 0x2e (int_c) c ontains the definition of the fla t threshold angle for the flat interrupt . name 0x2e int_c bit 7 6 5 4 read/write r/w r/w r/w r/w reset value n/a n/a 0 0 content reserved flat_theta<5:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 1 0 0 0 content flat_theta<3:0> reserv ed: write 0 flat_theta<5:0>: defines threshold for detection of flat position in range from 0 to 44.8.
BMA250E d ata sheet page 83 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x2f (int_d) c ontains the definition of the flat interrupt hold time and flat interrupt hysteresis. name 0x2f int_d bit 7 6 5 4 read/wri te r/w r/w r/w r/w reset value 0 0 0 1 content reserved flat_hold_time<1:0> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 1 content reserved flat_hy<2:0> reserved: write 0 flat_hold_time<1:0>: delay time for which the flat value must remain stable for the flat interrupt to be generated: 00b ? 0 ms , 01b ? 512 ms , 10b ? 1024 ms , 11b ? 2048 ms flat_hy<2:0>: defines flat interrupt hysteresis; flat value must change by more than twice the value of flat interrupt hysteresis to detec t a state change. for details see chapter 4.7.8. 000b ? hysteresis of the flat detection disabled
BMA250E d ata sheet page 84 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x30 (fifo_config_0) contains the fifo watermark level. name 0x30 fifo_config_0 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value n/a n/a 0 0 content reserved fifo_water_mark_level_trigger_retain< 5:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content fifo_water_mark_level_trigger_retain<3:0> reserved: write 0 fifo_water_mark_level_trigger_retain<5:0>: fifo_water_ma rk_level_trigger_retain<5:0> defines the fifo watermark level. an interrupt will be generated, when the number of entries in the fifo is equal to fifo_water_mark_level_trigger_retain<5:0>;
BMA250E d ata sheet page 85 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x32 (pmu_self_test) c ontains the settings for the sens or self - test configuration and trigger . name 0x32 pmu_self_test bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved self_test_amp bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved_0 self_test_sign self_test - axis<1:0> reserved: write 0x0 reserved_0: write 0x0 self_test_amp; select amplitude of the selftest deflection 1 ? high, default value is low ( 0 ) self_test_sign: select sign of self - test excitation as 1 ? positive , or 0 ? nega tive self_test_axis: select axis to be self - tested: 00b ? self - test disabled , 01 b ? x - axis , 10 b ? y - axis , or 11 b ? z - axis; when a self - test is performed, only the acceleration data readout value of the selected axis is valid; after the self - test ha s been enabled a delay of a least 5 0 ms is necessary for the read - out value to settle
BMA250E d ata sheet page 86 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x33 (trim_nvm_ctrl) c ontains the control settings for the few - time programmable non - volatile memory (nvm). name 0x33 trim_nvm_ctrl bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content nvm_remain<3:0> bit 3 2 1 0 read/write r/w r w r/w reset value 0 n/a 0 0 content nvm_load nvm_rdy nvm_prog_trig nvm_prog_mode nvm_remain<3:0>: number of remaining write cycles permitted for nvm; the numbe r is decremented each time a write to the nvm is triggered nvm_load: 1 ? trigger, or 0 ? do not trigger an update of all configuration registers from nvm ; the nvm_rdy flag must be 1 prior to triggering the update nvm_rdy: status of nvm controller: 0 ? nvm write / nvm update operation is in progress , 1 ? nvm is ready to accept a new write or update trigger nvm_prog_trig: 1 ? trigger, or 0 ? do not trigger an nvm write operation; the trigger is only accepted if the nvm was unlocked before and nvm _remain<3:0> is greater than 0; flag nvm_rdy must be 1 prior to triggering the write cycle nvm_prog_mode: 1 ? unlock, or 0 ? lock nvm write operation
BMA250E d ata sheet page 87 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x34 (bgw_spi3_wdt) c ontains settings for the digital interfaces . name 0x34 bgw_spi3_wd t bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved i2c_wdt_en i2c_wdt_sel spi3 reserved: write 0 i2c_wdt_en: if i2c interface mode is selec ted then 1 ? enable, or 0 ? disables the watchdog at the sdi pin (= sda for i2c) i2c_wdt_sel: select an i2c watchdog timer period of 0 ? 1 ms, or 1 ? 50 ms spi3: select 0 ? 4 - wire spi , or 1 ? 3 - wire spi mode
BMA250E d ata sheet page 88 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x36 (ofc_ctrl) c ontains c ontrol signals and configuration settings for the fast and the slow offset compensation. name 0x36 ofc_ctrl bit 7 6 5 4 read/write w w w r reset value 0 0 0 0 content offset_reset cal_trigger<1:0> cal_rdy bit 3 2 1 0 read/write r/w r/w r/w r/w res et value 0 0 0 0 content reserved hp_z_en hp_y_en hp_x_en offset_reset: 1 ? set all offset compensation registers (0x38 to 0x3a ) to zero , or 0 ? keep their values offset_trigger<1:0>: trigger fast compensation for 01b ? x - axis , 10b ? y - axis , or 11b ? z - axis; 00b ? do not trigger offset compensation; offset compensation must not be triggered when cal_rdy is 0 cal_rdy: indicates the state of the fast compensation : 0 ? offset compensation is in progress , or 1 ? offset compensation is read y to be retriggered reserved: write 0 hp_z_en: 1 ? enable, or 0 ? disable slow off set compensation for the z - axis hp_y_en: 1 ? enable, or 0 ? disable slow off set compensation for the y - axis hp_x_en: 1 ? enable, or 0 ? disable slow off set comp ensation for the x - axis
BMA250E d ata sheet page 89 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x3 7 (ofc_setting) c ontains configuration settings for the fast and the slow offset compensation. name 0x37 ofc_setting bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved offset_target_z<1:0> offset_target_y<1 > bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content offset_target_y<0 > offset_target_x<1:0> cut_off reserved: write 0 offset_target_z<1:0>: offset compensation target value for z - axis is 00b ? 0 g , 01b ? +1 g , 10b ? - 1 g, or 11b ? 0 g offset_target_y<1:0>: offset compensation target value for y - axis is 00b ? 0 g , 01b ? +1 g, 10b ? - 1 g, or 11b ? 0 g offset_target_x<1:0>: offset compensation target value for x - axis is 00b ? 0 g , 01b ? +1 g, 10b ? - 1 g, or 11b ? 0 g cut_off: select 0 ? 1 hz, or 1 ? 10 hz cut - off frequency for slow offset compensation high - pass filter
BMA250E d ata sheet page 90 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x38 (ofc_offset_x) c ontains the offset compensation value for x - axis acceleration readout data . name 0x38 ofc_off set_x bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content offset_x<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content offset_x<3:0> offset_ x<7:0>: offset value, which is subtracted from the internal filtered and unfiltered x - axis acceleration data; the offset value is represented with twos complement notation, with a mapping of +127 ? +0.992g, 0 ? 0 g, and - 128 ? - 1 g; the scaling is independent of the selected g - range; the content of the offset_x<7:0> may b e written to the nvm; it is automatically restored from the nvm after each power - on or softreset; offset_x<7:0> may be written directly by the user; it is generated automatically after triggering the fast offset compensation procedure for the x - axis
BMA250E d ata sheet page 91 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. regis ter 0x39 (ofc_offset_y) c ontains the offset compensation value for y - axis acceleration readout data . name 0x39 ofc_offset_y bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content offset_y<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w res et value 0 0 0 0 content offset_y<3:0> offset_ y<7:0>: offset value, which is subtracted from the internal filtered and unfiltered y - axis acceleration data; the offset value is represented with twos complement notation, with a mapping of +127 ? +0.992 g, 0 ? 0 g, and - 128 ? - 1 g; the scaling is independent of the selected g - range; the content of the offset_y<7:0> may be written to the nvm; it is automatically restored from the nvm after each power - on or softreset; offset_y<7:0> may be written directly b y the user; it is generated automatically after triggering the fast offset compensation procedure for the y - axis
BMA250E d ata sheet page 92 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x3a (ofc_offset_z) c ontains the offset compensation value for z - axis acceleration readout data . name 0x3a ofc_offset_z bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content offset_z<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content offset_z<3:0> offset_ z<7:0>: offset value, which is subtracted from the internal filtered and unfiltered z - a xis acceleration data; the offset value is represented with twos complement notation, with a mapping of +127 ? +0.992g, 0 ? 0 g, and - 128 ? - 1 g; the scaling is independent of the selected g - range; the content of the offset_z<7:0> may be written to the nv m; it is automatically restored from the nvm after each power - on or softreset; offset_z<7:0> may be written directly by the user; it is generated automatically after triggering the fast offset compensation procedure for the z - axis register 0x3b (trim_gp0) c ontains general purpose data register with nvm back - up . name 0x3b trim_gp0 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content gp0<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content gp0<3:0> gp0<7:0>: gene ral purpose nvm image register not linked to any sensor - specific functionality; register may be written to nvm and is restored after each power - up or softreset
BMA250E d ata sheet page 93 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x3c (trim_gp1) c ontains general purpose data register with nvm back - up . name 0x3c tr im_gp1 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content gp1<7:4> bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content gp1<3:0> gp1<7:0>: general purpose nvm image register not linked to any sensor - specific functi onality; register may be written to nvm and is restored after each power - up or softreset
BMA250E d ata sheet page 94 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x3e (fifo_config_1) c ontains fifo configuration settings . the fifo buffer memory is cleared and the fifo - full flag is cleared when writing to fifo_config_1 register. name 0x3e fifo_config_1 bit 7 6 5 4 read/write r/w r/w r/w r/w reset value 0 0 0 0 content fifo_mode<1:0> reserved bit 3 2 1 0 read/write r/w r/w r/w r/w reset value 0 0 0 0 content reserved fifo_data_select<1:0> fifo_mode<1:0>: sele cts the fifo operating mode: 00b ? bypass (buffer depth of 1 frame; old data is discarded) , 01b ? fifo (data collection stops when buffer is filled with 32 frames), 10b ? stream (sampling continues when buffer is full; old is discarded), 11b ? res erved, do not use fifo_data_select<1:0>: selects whether 00b ? x+y+z, 01b ? x only, 10b ? y only, 11b ? z only acceleration data are stored in the fifo
BMA250E d ata sheet page 95 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. register 0x3f (fifo_data) fifo data readout register. t he f ormat of the lsb and msb components corresponds to that of the acceleration data readout registers. the new data flag is preserved. read burst access may be used since the address counter will not increment when the read burst is started at the address of fifo_data. the entire frame is disca rded when a fame is only partially read out. name 0x3f fifo_data bit 7 6 5 4 read/write r r r r reset value n/a n/a n/a n/a content fifo_data_output_register<7:4> bit 3 2 1 0 read/write r r r r reset value n/a n/a n/a n/a content fifo_data_output _register<3:0> fifo_data_output_register<7:0>: fifo data readout; data format depends on the setting of register fifo_data_select<1:0>: if x+y+z data are selected, the data of frame n is reading out in the order of x - lsb(n), x - msb(n), y - lsb(n), y - msb( n), z - lsb(n), z - msb(n); if x - only is selected, the data of frame n and n+1 are reading out in the order of x - lsb(n), x - msb(n), x - lsb(n+1), x - msb(n+1); the y - only and z - only modes behave analogously
BMA250E d ata sheet page 96 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 7. digital interfaces the BMA250E supports two serial digi tal interface protocols for communication as a slave with a host device (when operating in general mode): spi and i2c. the active interface is selected by the state of the pin#11 (ps) protocol select pin: 0 (1) selects spi (i2c). for details please r efer to section 8). by default, spi operates in the standard 4 - wire configuration. it can be re - configured by software to work in 3 - wire mode instead of standard 4 - wire mode. both interfaces share the same pins. the mapping for each interface is given in the following table: table 20 : mapping of the interface pins pin# name use w/ spi use w/ i2c description 1 sdo sdo address spi: data output (4 - wire mode) i2c: used to set lsb of i2c address 2 sdx sdi sda spi: data input (4 - wi re mode) data input / output (3 - wire mode) i2c: serial data 10 csb csb unused chip select (enable) 12 scx sck scl spi: serial clock i2c: serial clock the following table shows the electrical specifications of the interface pins: table 21 : electrical specification of the interface pins parameter symbol condition min typ max units pull - up resistance, csb pin r up internal pull - up resistance to vddio 75 100 125 k ? in 5 10 pf i2c bus load capacitance (max. drive capability) c i2c_load 400 pf
BMA250E d ata sheet page 97 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 7.1 serial peripheral interface (spi) the timing specification for spi of the BMA250E is given in the following table: table 22 : spi timing parameter symbol condition min max units clock frequ ency f spi max. load on sdi or sdo = 25pf, v ddio 1.62v 10 mhz v ddio < 1.62v 7.5 mhz sck low pulse t sckl 20 ns sck high pulse t sckh 20 ns sdi setup time t sdi_setup 20 ns sdi hold time t sdi_hold 20 ns sdo output delay t sdo_od load = 25pf, v ddio 1.62v 30 ns load = 25pf, v ddio < 1. 62v 50 ns load = 250pf, v ddio > 2.4v 40 ns csb setup time t csb_setup 20 ns csb hold time t csb_hold 40 ns idle time between write accesses, normal mode, standby mode, low - power mode 2 t idle_wacc_nm 2 s idle time between write accesses, suspe nd mode, low - power mode 1 t idle_wacc_sum 450 s
BMA250E d ata sheet page 98 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. the following figure shows the definition of the spi timings given in the following figure: figure 13 : spi timing diagram the spi interface of the BMA250E is compatible with two modes, 00 and 11. the automatic selection between [cpol = 0 and cpha = 0] and [cpol = 1 and cpha = 1] is controlled based on the value of sck after a falling edge of csb. two configurations of the spi interfa ce are supported by the BMA250E : 4 - wire and 3 - wire. the same protocol is used by both configurations. the device operates in 4 - wire configuration by default. it can be switched to 3 - wire configuration by writing 1 to (0x34) spi3 . pin sdi is used as the c ommon data pin in 3 - wire configuration. for single byte read as well as write operations, 16 - bit protocols are used. the BMA250E also supports multiple - byte read operations. in spi 4 - wire configuration csb (chip select low active), sck (serial clock), sdi (serial data input), and sdo (serial data output) pins are used. the communication starts when the csb is pulled low by the spi master and stops when csb is pulled high. sck is also controlled by spi master. sdi and sdo are driven at the falling edge of s ck and should be captured at the rising edge of sck. t s d i _ h o l d t s c k h t c s b _ h o l d t c s b _ s e t u p t s d i _ s e t u p t s c k l t s d o _ o d c s b s c k s d i s d o
BMA250E d ata sheet page 99 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. the basic write operation waveform for 4 - wire configuration is depicted in figure 1 4. during the entire write cycle sdo remains in high - impedance state. figure 14 : 4 - wire basic spi write sequence (mode 11) the basic read operation waveform for 4 - wire configuration is depicted in figure 1 5 : figure 15 : 4 - wire basic spi read sequence (mode 11) csb sck sdi r/w ad6 ad 5 ad 4 ad 3 ad 2 ad1 ad0 di5 di4 di3 di2 di1 di0 di7 di6 sdo tri - state z csb sck sdi r/w ad6 ad 5 ad 4 ad 3 ad 2 ad1 ad0 sdo do5 do4 do3 do2 do1 do0 do7 do6 tri - state
BMA250E d ata sheet page 100 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. t he data bits are used as follows: bit0: read/write bit. when 0, the data sdi is written into the chip. when 1, the data sdo from the chip is read. bit1 - 7: address ad(6:0). bit8 - 15: when in write mode, these are the data sdi, which will be writt en into the address. when in read mode, these are the data sdo, which are read from the address. multiple read operations are possible by keeping csb low and continuing the data transfer. only the first register address has to be written. addresses are a utomatically incremented after each read access as long as csb stays active low. the principle of multiple read is shown in figure 1 6 : figure 16 : spi multiple read in spi 3 - wire configuration csb (chi p select low active), sck (serial clock), and sdi (serial data input and output) pins are used. the communication starts when the csb is pulled low by the spi master and stops when csb is pulled high. sck is also controlled by spi master. sdi is driven (wh en used as input of the device) at the falling edge of sck and should be captured (when used as the output of the device) at the rising edge of sck. the protocol as such is the same in 3 - wire configuration as it is in 4 - wire configuration. the basic oper ation waveform (read or write access) for 3 - wire configuration is depicted in figure 1 7 : figure 17 : 3 - wire basic spi read or write sequence (mode 11) start rw stop 1 0 0 0 0 0 1 0 x x x x x x x x x x x x x x x x x x x x x x x x register adress (02h) csb = 0 csb = 1 data byte data byte data register - adress 03h data register - adress 04h control byte data byte data register - adress 02h csb sck sdi rw a d 6 ad5 ad4 ad3 ad2 ad1 ad0 di5 di4 di3 di2 di1 di0 di7 di6
BMA250E d ata sheet page 101 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 7.2 inter - integrated circuit (i2c) the i2c bus uses scl (= scx pin, serial clock) and sda (= sdx pin, serial data input and output) signal lines. both lines are connected to v ddio externally via pull - up resistors so that they are pulled high when the bus is free. the i2c interface of the BMA250E is compati ble with the i2c specification um10204 rev. 03 (19 june 2007), available at http://www.nxp.com . the BMA250E supports i2c standard mode and fast mode, only 7 - bit address mode is supported. for v ddio = 1.2v to 1.8v the guaranteed voltage output levels are sl ightly relaxed as described in the parameter specification ( table 1 ). the default i2c address of the device is 0011000b (0x18). it is used if the sdo pin is pulled to gnd. the alternative address 0011001 b (0x19) is selected by pulling the sdo pin to v ddio . the timing specification for i2c of the BMA250E is given in table 23 : table 23 : i2c timings parameter symbol condition min max units clock frequen cy f scl 400 khz scl low period t low 1.3 ? high 0.6 sda setup time t sudat 0.1 sda hold time t hddat 0.0 setup time for a repeated start condition t susta 0.6 hold time for a start condition t hdsta 0.6 setup time for a stop condition t susto 0.6 time before a new transmission can start t buf 1.3 idle time between write accesses, normal mode, standby mode, low - power mode 2 t idle_wacc_n m 2 s idle time between write accesses, suspend mode, low - power mode 1 t idl e_wacc_s um 450 s
BMA250E d ata sheet page 102 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. figure 1 8 shows the definition of the i2c timings given in table 23 : figure 18 : i2c timing diagram the i2c protocol works as follows: start : dat a transmission on the bus begins with a high to low transition on the sda line while scl is held high (start condition (s) indicated by i2c bus master). once the start signal is transferred by the master, the bus is considered busy. stop : each data transf er should be terminated by a stop signal (p) generated by master. the stop condition is a low to high transition on sda line while scl is held high. ack : each byte of data transferred must be acknowledged. it is indicated by an acknowledge bit sent by the receiver. the transmitter must release the sda line (no pull down) during the acknowledge pulse while the receiver must then pull the sda line low so that it remains stable low during the high period of the acknowledge clock cycle. in the following diag rams these abbreviations are used: s start p stop acks acknowledge by slave ackm acknowledge by master nackm not acknowledge by master rw read / write a start immediately followed by a stop (without sck toggling from logic 1 to logic 0) is not supported. if such a combination occurs, the stop is not recognized by the device. t hddat t f t buf sd a sc l sd a t low t hdsta t r t susta t high t sudat t susto
BMA250E d ata sheet page 103 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. i2c write access: i2c write access can be used to write a data byte in one sequence. the sequence begins with start condition generated by the master, followed by 7 b its slave address and a write bit (rw = 0). the slave sends an acknowledge bit (ack = 0) and releases the bus. then the master sends the one byte register address. the slave again acknowledges the transmission and waits for the 8 bits of data which shall b e written to the specified register address. after the slave acknowledges the data byte, the master generates a stop signal and terminates the writing protocol. example of an i2c write access: figure 19 : i2c write i2c read access: i2c read access also can be used to read one or multiple data bytes in one sequence. a read sequence consists of a one - byte i2c write phase followed by the i2c read phase. the two parts of the transmission must be separated by a repeated start condition (sr). the i2c write phase addresses the slave and sends the register address to be read. after slave acknowledges the transmission, the master generates again a start condition and sends the slave address together with a read bit (rw = 1). then the master releases the bus and waits for the data bytes to be read out from slave. after each data byte the master has to generate an acknowledge bit (ack = 0) to enable further data transfer. a nackm (ack = 1) from the master stops the data being transferred from the slave. the slave releases the bus so that the master can generate a stop condition and terminate the transmission. the register address is automatically incremented and, therefore, more than one byte can be sequentially rea d out. once a new data read transmission starts, the start address will be set to the register address specified in the latest i2c write command. by default the start address is set at 0x00. in this way repetitive multi - bytes reads from the same starting a ddress are possible. in order to prevent the i2c slave of the device to lock - up the i2c bus, a watchdog timer (wdt) is implemented. the wdt observes internal i2c signals and resets the i2c interface if the bus is locked - up by the BMA250E . the activity an d the timer period of the wdt can be configured through the bits (0x34) i2c_wdt_en and (0x34) i2c_wdt_sel . writing 1 (0) to (0x34) i2c_wdt_en activates (de - activates) the wdt. writing 0 (1) to (0x34) i2c_wdt_se selects a timer period of 1 ms (50 m s). start rw acks acks acks stop 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 x x x x x x x x s slave adress register adress (0x10) control byte data byte data (0x09) p
BMA250E d ata sheet page 104 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. example of an i2c read access: figure 20 : i2c multiple read 7.2.1 spi and i2c access restrictions in order to allow for the correct internal synchronisation of data written to the BMA250E , certain a ccess restrictions apply for consecutive write accesses or a write/read sequence through the spi as well as i2c interface. the required waiting period depends on whether the device is operating in normal mode (or standby mode, or low - power mode 2) or suspe nd mode (or low - power mode 1). as illustrated in figure 21 , an interface idle time of at least 2 s is required following a write operation when the device operates in normal mode (or standby mode, or low - power mode 2). in suspend mode (or low - power mode 1) an interface idle time of least 450 s is required. figure 21 : post - write access timing constraints start rw acks dummy acks 0 0 1 1 0 0 0 0 x 0 0 0 0 0 1 0 start rw acks ackm ackm 0 0 1 1 0 0 0 1 x x x x x x x x x x x x x x x x ackm ackm x x x x x x x x x x x x x x x x ackm nack stop x x x x x x x x x x x x x x x x sr slave adress read data (0x03) read data (0x02) control byte data byte data byte s slave adress register adress (0x02) p data byte data byte read data (0x06) read data (0x07) data byte data byte read data (0x04) read data (0x05) x - after - write register update period ( > 2 us / 450 us ) write - operation x - operation
BMA250E d ata sheet page 105 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 8. pin - out and connection diagram 8.1 pin - out figure 22 : pin - out top v iew figure 23 : pin - out bottom view table 24 : pin description pin# name i/o type description connect to in spi 4w in spi 3w in i2c 1 sdo digital out serial data output in spi address select in i2c mode see chapter 7 .2 sdo dnc (float) gnd for default addr. 2 sd x digital i/o sda serial data i/o in i2c sdi serial data input in spi 4w sda serial data i/o in spi 3w sdi sda sda 3 vddio supply digital i/o supply voltage (1.2v 3.6v ) v ddio v ddio v ddio 4 nc -- gnd gnd gnd 5 int1 digital out interrupt output 1 * int1 int1 int1 6 int2 digital out interrupt output 2 * int2 int2 int2 7 vdd supply power supply for analog & digital domain (1.62v 3.6v) v dd v dd v dd 8 gndio ground grou nd for i/o gnd gnd gnd 9 gnd ground ground for digital & analog gnd gnd gnd 10 csb digital in chip select for spi mode csb csb dnc (float) 11 ps digital in protocol select (gnd = spi, v ddio = i2c) gnd gnd v ddio 12 sc x digital in sck for spi serial clo ck scl for i2c serial clock sck sck scl * if int1 and/or int2 are not used, please do not connect them (dnc) . bottom view pads visible ! top view pads not visible!
BMA250E d ata sheet page 106 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 8.2 connection diagram 4 - wire spi figure 24 : 4 - wire spi connection note: the recommended val ue for c1, c2 is 100 nf.
BMA250E d ata sheet page 107 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 8.3 connection diagram 3 - wire spi figure 25 : 3 - wire spi connection note: the recommended value for c1, c2 is 100 nf.
BMA250E d ata sheet page 108 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 8.4 connection diagram i 2 c f igure 26 : i2c connection note: the recommended value for c 1 , c 2 is 100 nf.
BMA250E d ata sheet page 109 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9. package 9.1 outline dimensions the sensor housing is a standard lga package. its dimensions are the following. figure 27 : packa ge outline dimensions pin1 marking: metal pad internally connected to gnd (external connection not recommended)
BMA250E d ata sheet page 110 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9.2 s ensing axes orientation if the sensor is accelerated in the indicated directions, the corresponding channel will deliver a positive acceleration signal (dynamic acceleration). if the sensor is at rest and the force of gravity is act ing along the indicated directions, the output of the corresponding channel will be negative (static acceleration). example: if the sensor is at rest or at uniform motion in a gravity field according to the figure given below, the output signals are: ? 0g for the x channel ? 0g for the y channel ? + 1g for the z channel figure 28 : orientation of sensing axis the following table lists all corresponding output signals on x, y, and z while the sensor is at rest or at un iform motion in a gravity field under assumption of a 2g range setting and a top down gravity vector as shown above. table 25 : output signals depending on sensor orientation sensor orientation (gravity vector ) output signal x 0g / 0lsb 1g / 256lsb 0g / 0lsb - 1g / - 256 lsb 0g / 0lsb 0g / 0lsb output signal y - 1g / - 256lsb 0g / 0lsb 1g / 256 lsb 0g / 0lsb 0g / 0ls b 0g / 0lsb output signal z 0g / 0lsb 0g / 0lsb 0g / 0lsb 0g / 0lsb 1g / 256 lsb - 1g / - 256 lsb upright u pright
BMA250E d ata sheet page 111 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9.3 landing pattern recommendation for the design of the landing patterns, we recommend the following dimensioning: figure 29 : landing patterns ; dimensions are in mm same tolerances as giv en for the outline dimensions (c hapter 9.1, figure 27 ) sho uld be assumed. a wiring no - go area in the top layer of the pcb below the sensor is strongly recommended (e.g. no vias, wires or other metal structures).
BMA250E d ata sheet page 112 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9.4 marking 9.4.1 mass production devices table 26 : marking of mass production samp les labeling name symbol remark ? lot counter ccc 3 alphanumeric digits, variable to generate mass production trace - code product number t 1 alphanumeric digit, fixed to identify product type, t = i sub - con id l 1 alphanumeric digit, variable to identify sub - con pin 1 identifier ? -- 9.4.2 engineering samples table 27 : marking of engineering samples labeling name symbol remark ? eng. sample id n 1 alphanumeric digit, fixed to identify en gineering sample, n = * or e or e sample id xx 2 alphanumeric digits, variable to generate trace - code counter id cc 2 alphanumeric digits, variable to generate trace - code pin 1 identifier ? -- xxn cc ccc tl
BMA250E d ata sheet page 113 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9.5 soldering guidelines the moisture sensitivity level of the BMA250E sensors corresponds to jedec level 1, see also - ipc/jedec j - std - 020c "joint industry standard: moisture/reflow sensitivity classification for non - hermetic solid state surface mount devices" - ipc/jedec j - std - 033a "joint industry standa rd: handling, packing, shipping and use of moisture/reflow s ensitive surface mount devices" the sensor fulfils the lead - free soldering requirements of the above - mentioned ipc/jedec standard, i.e. reflow soldering with a peak temperature up to 260c. figure 30 : soldering profile
BMA250E d ata sheet page 114 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9.6 handling instructions micromechanical sensors are designed to sense acceleration with high accuracy even at low amplitudes and contain highly sensitive structures inside the sensor element. the mems sen sor can tolerate mechanical shocks up to several thousand g's. however, these limits might be exceeded in conditions with extreme shock loads such as e.g. hammer blow on or next to the sensor, dropping of the sensor onto hard surfaces etc. we recommend to avoid g - forces beyond the specified limits during transport, handling and mounting of the sensors in a defined and qualified installation process. this device has built - in protections against high electrostatic discharges or electric fields (e.g. 2kv hb m); however, anti - static precautions should be taken as for any other cmos component. unless otherwise specified, proper operation can only occur when all terminal voltages are kept within the supply voltage range. unused inputs must always be tied to a de fined logic voltage level.
BMA250E d ata sheet page 115 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9.7 tape and reel specification the BMA250E is shipped in a standard cardboard box. the box dimension for 1 reel is: l x w x h = 35cm x 35cm x 6cm . BMA250E quantity: 10,000pcs per reel, please handle with care. figure 31 : tape and reel dimensions in mm
BMA250E d ata sheet page 116 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9.7.1 orientation within the reel ? processing direction ? figure 32 : orientation of the BMA250E devices relative to the tape
BMA250E d ata sheet page 117 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 9.8 environmental safety the BMA250E senso r meets the requirements of the ec restriction of hazardous substances (rohs) directive, see also: directive 2002/95/ec of the european parliament and of the council of 8 september 2011 on the restriction of the use of certain hazardous substances in elec trical and electronic equipment. 9.8.1 halogen content t he BMA250E is halogen - free. for more details on the corresponding analysis results please contact your bosch sensortec representative. 9.8.2 internal package structure within the scope of bosch sensortecs ambi tion to improve its products and secure the mass product supply, bosch sensortec qualifies additional sources (e.g. 2 nd source) for the lga package of the BMA250E . while bosch sensortec took care that all of the technical packages parameters are described above are 100% identical for all sources, there can be differences in the chemical content and the internal structural between the different package sources. however, as secured by the extensive product qualification process of bosch sensortec, this has no impact to the usage or to the quality of the BMA250E product.
BMA250E d ata sheet page 118 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 10. legal disclaimer 10.1 engineering samples engineering samples are marked with an asterisk (*) or (e) or (e). samples may vary from the valid technical specifications of the product series contain ed in this data sheet. they are therefore not intended or fit for resale to third parties or for use in end products. their sole purpose is internal client testing. the testing of an engineering sample may in no way replace the testing of a product series. bosch sensortec assumes no liability for the use of engineering samples. the purchaser shall indemnify bosch sensortec from all claims arising from the use of engineering samples. 10.2 product use bosch sensortec products are developed for the consumer goods industry. they may only be used within the parameters of this product data sheet. they are not fit for use in life - sustaining or security sensitive systems. security sensitive systems are those for which a malfunction is e xpected to lead to bodily harm or significant property damage. in addition, they are not fit for use in products which interact with motor vehicle systems. the resale and/or use of products are at the purchasers own risk and his own responsibility. the e xamination of fitness for the intended use is the sole responsibility of the purchaser. the purchaser shall indemnify bosch sensortec from all third party claims arising from any product use not covered by the parameters of this product data sheet or not approved by bosch sensortec and reimburse bosch sensortec for all costs in connection with such claims. the purchaser must monitor the market for the purchased products, particularly with regard to product safety, and inform bosch sensortec without delay of all security relevant incidents. 10.3 application examples and hints with respect to any examples or hints given herein, any typical values stated herein and/or any information regarding the application of the device, bosch sensortec hereby disclaims any a nd all warranties and liabilities of any kind, including without limitation warranties of non - infringement of intellectual property rights or copyrights of any third party. the information given in this document shall in no event be regarded as a guarantee of conditions or characteristics. they are provided for illustrative purposes only and no evaluation regarding infringement of intellectual property rights or copyrights or regarding functionality, performance or error has been made.
BMA250E d ata sheet page 119 bst - BMA250E - ds00 4 - 0 4 | revision 1. 1 | december 201 3 bosch sensortec ? b osch sensortec gmbh reserves all rights even in the event of industrial property rights. we reserve all rights of disposal such as copying a nd passing on to third parties. bosch and the symbol are registered trademarks of robert bosch gmbh, germany. note: specificatio ns within this document are subject to change without notice. 11. document history an d m odification rev. no chapter description of modification/c hanges date 0. 1 initial internal release 01 june 201 2 0.2 internal revision, not for release 0.3 internal revision, not for release 0.4 internal revision, not for release 0.5 all initi al external release 01 august 2012 0.6 1, 4.1, 4.2, 6.2, 7.1, 9.3 update 24 sep 2012 0.7 4.5.2, 4.7.8, 6.2, 9.1, 9.3 update 22 oct 2012 1.0 1, 4.2, 4.7.3, 4.7.7, 6.2, 9.3, 9.4.1 , 9.8 update 21 may 2013 1.1 4.7 update single tap; update high - g interrupt 12.12.13 6.2 update 0x0f; update 0x2b; update 0x32 bosch sensortec gmbh gerhard - kindler - strasse 8 72770 reutlingen / germany contact@bosch - sensortec.com www.bosch - sensortec.com modifications reserved | p rinted in germany specifications subject to change without notice document number: bst - BMA250E - ds00 4 - 0 4 revision _ 1. 1 _ december _ 2013


▲Up To Search▲   

 
Price & Availability of BMA250E

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X